PDA

Ver la Versión Completa : Subconsulta en un ADOQuery


Sr.Scorpion
04-08-2005, 22:15:04
Hola:

Estoy utilizando Delphi6, con BD en Access. Tengo un ADOQuery1 el cual me realiza una consulta, y tengo un ADOQuery2 el cual me realiza otra consulta dela consulta anterior (ADOQuery1). De que forma le digo al ADOQuery2 que el FROM es lo que esta puesto en el ADOQuery1 y que la seleccion me la haga por lo que esta puesto en el ADOQuery1.

Saludos y Gracias

epuigdef
05-08-2005, 09:12:26
Me parece que lo que necesitas es tener una sola consulta con una subconsulta, del estilo siguiente:


SELECT * from tabla where campo IN (select campo from otra_tabla where...)

La select principal seria la del segundo TADOQurey y la subconsulta sería la del primero.

No sé si te sirve, pero puedes buscar la sintaxis exacta de las subconsultas y ver si te vale.

Edu

Sr.Scorpion
05-08-2005, 14:52:02
Me parece que lo que necesitas es tener una sola consulta con una subconsulta, del estilo siguiente:


SELECT * from tabla where campo IN (select campo from otra_tabla where...)

La select principal seria la del segundo TADOQurey y la subconsulta sería la del primero.

No sé si te sirve, pero puedes buscar la sintaxis exacta de las subconsultas y ver si te vale.

Edu
Esta claro que si lo hago como me dices me funciona... mi pregunta es si en vez de poner SELECT * from tabla where campo IN (select campo from otra_tabla where...) puedo poner algo asi como SELECT * from tabla where campo IN (ADOQuery1.SQL).

epuigdef
09-08-2005, 10:34:53
Me parece que esto no va a colar...


La única manera sería concatenar cadenas para construir la SQL:

qry1.sql.text = "select * from tabla where campo in ("+qry2.sql.text+")"

y luego ejecutas qry1

Un saludo

Edu

Lepe
09-08-2005, 11:08:34
puedo poner algo asi como SELECT * from tabla where campo IN (ADOQuery1.SQL).

Puedes simularlo con un parámetro si el campo tiene el mismo nombre en ambas querys.

Dinos exactamente cuales son las instrucciones SQL, y la relación de las tablas.

Un saludo