Unión de tablas dentro de la función de consultaHola,
Conozco bastante las secuencias de comandos JSL, aunque tengo algunas consultas SQL personalizadas que escribí en el generador de consultas. Estoy tratando de poner estas consultas en el script JSL sin tener que volver a escribirlas usando la función JOIN
¿Es posible que me una a las tablas en la función Query()?
Por ejemplo dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dr = Abrir( "$RANDOM_DATA/Clase Pequeña.jmp" );
A continuación se muestra lo que estoy intentando/suponiendo que debería verse el código
RESULTADO = CONSULTA (dt, dr, "SELECCIONAR *
DE 'Clase grande' BC
ÚNETE al SC de 'Clase pequeña' en SC.name = BC.name;");
Los únicos ejemplos que encontré fueron de la función Consulta que se usa con 1 tabla.
Gracias,
David
Re: Unión de tablas dentro de la función de consulta¡Gracias!
Re: Unión de tablas dentro de la función de consulta¡Gracias!Re: Unión de tablas dentro de la función de consultaY al igual que con las otras plataformas de generación de tablas en JMP, si ejecuta de forma interactiva la plataforma interactiva y luego busca en la entrada "Fuente" en el Panel de tabla de la nueva tabla de datos, verá el script JSL que se necesita para generar el tabla de datos.Aquí está el script de la entrada Fuente, para el ejemplo de Unión que @cwillden proporcionó
New SQL Query(
Connection( "JMP:RESTRICT=Y;UUID=4E866C55-4F0A-45D4-EBE9AE92DC4D8FB7" ),
JMP Tables(
["t1" => "C:\Program Files\SAS\JMPPRO\13\Samples\Data\SATByYear.jmp",
"t2" => "C:\Program Files\SAS\JMPPRO\13\Samples\Data\US Demographics.jmp"]
),
QueryName( "SQLQuery1" ),
CustomSQL(
"SELECT t1.State, t1.\!"SAT Math\!", t2.\!"College Degrees\!",
t2.\!"Eighth Grade Math\!"
FROM t1
LEFT OUTER JOIN t2
ON t1.State = t2.State
WHERE t1.'SAT Math' > 550;
"
)
) << RunRe: Unión de tablas dentro de la función de consultaLa función Query() en el índice de Scripting en realidad tiene un buen ejemplo de lo que desea:
// Using aliases, performing a join
dtSAT = Open(
"$SAMPLE_DATA/SATByYear.jmp",
Invisible
);
dtUS = Open(
"$SAMPLE_DATA/US Demographics.jmp",
Invisible
);
Query(
Table( dtSAT, "t1" ),
Table( dtUS, "t2" ),
"\[SELECT t1.State, t1."SAT Math", t2."College Degrees",
t2."Eighth Grade Math"
FROM t1
LEFT OUTER JOIN t2
ON t1.State = t2.State
WHERE t1.'SAT Math' > 550;
]\"
);