Einzelnen Beitrag anzeigen

jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#4

AW: Join mit tfdquery

  Alt 9. Jan 2017, 17:14
Ja, das nennt sich subselect so lange es komplett in einer Abfrage auf dem Server läuft.
Der Server, der die 2. Abfrage entgegennimmt, wird aber kaum etwas mit FDQuery1, der Delphircomponenten anfangen können. Die kennt er natürlich nicht.

Was funktionieren soll:
Code:
FDQuery2.sql.text := 'Select * from Adressen where Umsatz > 20000 and '+
                     'ADR_ID in ('Select ADR_ID from A_Adressen where ADR_Land = ''AT'' ')' ;
Am besten das Ganze noch mit Parametern für ADR_LAND.

P.S.:
Jedes "where <feld> in (Select <feld> from <table> [where..])"
kann man auch als Join formulieren:
Code:
-- mit join clause
Select a.*
  from Adressen a
  join A_Adressen aa
    on a.adr_id = aa.adr_id
 where a.Umsatz > 20000
   and aa.ADR_Land = 'AT'

-- oder
-- mit (altem) join 'Verfahren'
Select a.*
  from Adressen a, A_Adressen aa
 where a.ADR_ID = aa.ADR_ID
   and Umsatz > 20000
   and ADR_Land = 'AT'
Gruß, Jo

Geändert von jobo ( 9. Jan 2017 um 17:22 Uhr)
  Mit Zitat antworten Zitat