Consultas múltiples o anidadas
Hola a todos y gracias por vuestra ayuda.
Necesito saber cómo hacer consultas de consultas, me explico: tengo 4 consultas (A,B,C,D).
A es fácil:
select * from B;
Necesito que B sea asÃ:
select * from C, D;
que a su vez son dos consultas independientes.
Cómo puedo anidar las consultas en la clausula FROM, por lo poco que se de SQL creo que no se puede, o s�. Hay otra manera de hacerlo?
Otra pregunta: utilizo para el acceso a la Base de Datos Oracle una aplicación que se llama TOAD, pero no me permite palabras clave en las consultas como JOIN.... sabéis por qué?
Gracias.
Necesito saber cómo hacer consultas de consultas, me explico: tengo 4 consultas (A,B,C,D).
A es fácil:
select * from B;
Necesito que B sea asÃ:
select * from C, D;
que a su vez son dos consultas independientes.
Cómo puedo anidar las consultas en la clausula FROM, por lo poco que se de SQL creo que no se puede, o s�. Hay otra manera de hacerlo?
Otra pregunta: utilizo para el acceso a la Base de Datos Oracle una aplicación que se llama TOAD, pero no me permite palabras clave en las consultas como JOIN.... sabéis por qué?
Gracias.
un ejemplo de anidar querys es la siguiente:
SELECT a.seccion#,C.NRO_POLIZA,a.endoso#,a.pol_cuota#,a.cuota,a.referen
a.fecha_emision,a.nro_doc_cobro,a.bruto$,a.impuestos$,
a.retencion$,a.fecha_caja,b.notas
FROM ctas_cobradas a,ordenes_procesadas b,EMI_POLIZAS C
WHERE a.orden# = b.orden# and
A.POLIZA# = C.POLIZA# AND
A.poliza# in
(SELECT c.poliza#
FROM
emi_polizas A,
hemi_datos_poliza B,
emi_facturas_poliza c
WHERE
a.poliza# = b.poliza# and
b.poliza# = c.poliza# and
b.endoso# = c.endoso# and
c.fecha_emision between('01-JAN-1997') and ('31-MAR-2002') and
a.poliza# in(SELECT poliza#
FROM hemi_datos_poliza
WHERE tomador_docu# = 'CUIT' and
tomador_id# = '20181056542'))
SELECT a.seccion#,C.NRO_POLIZA,a.endoso#,a.pol_cuota#,a.cuota,a.referen
a.fecha_emision,a.nro_doc_cobro,a.bruto$,a.impuestos$,
a.retencion$,a.fecha_caja,b.notas
FROM ctas_cobradas a,ordenes_procesadas b,EMI_POLIZAS C
WHERE a.orden# = b.orden# and
A.POLIZA# = C.POLIZA# AND
A.poliza# in
(SELECT c.poliza#
FROM
emi_polizas A,
hemi_datos_poliza B,
emi_facturas_poliza c
WHERE
a.poliza# = b.poliza# and
b.poliza# = c.poliza# and
b.endoso# = c.endoso# and
c.fecha_emision between('01-JAN-1997') and ('31-MAR-2002') and
a.poliza# in(SELECT poliza#
FROM hemi_datos_poliza
WHERE tomador_docu# = 'CUIT' and
tomador_id# = '20181056542'))
