Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL operator ALL (https://www.delphipraxis.net/44147-sql-operator-all.html)

peter12 14. Apr 2005 12:29


SQL operator ALL
 
Suche eine möglichkeit aus zwei verschieden Tabellen mit datum - Felder alle herauszufiltern die nicht gleich sind
möcht dazu den operator ALL in einer Subselectmenge verwenden.

SQL-Code:
 select Distinct ADRESSE.Nr ,ADRESSE.NAME, ADRESSE.VORNAME , ADRESSE.ANSCHRIFT ,
 ADRESSE.PLZ ,ADRESSE.mbr, ADRESSE.ORT , ADRESSE.TEL , ADRESSE.HANDY , ADRESSE.GEBURTSDATUM ,
  ADRESSE.SOZIALVER , ADRESSE.EINSATZGEBIET , ADRESSE.EINSATZORT , ADRESSE.EINSATZBEGIN  ,
   ADRESSE.EINSATZENDE from ADRESSE left outer join BERUF on ADRESSE.Nr = BERUF.ADRESSE
                                    left outer join vorgange on ADRESSE.Nr = vorgange.dn
    where BERUF.BEZEICHNUNG Containing 'Hilfskraft' and AGRAR = 'Wahr ' and
     vorgange.einsatztag all (select tag from tage )
kommt aber fehlermeldung

peter

[edit=sakura] [sql]tags Mfg, sakura[/edit]

jim_raynor 14. Apr 2005 12:35

Re: SQL operator ALL
 
Kleiner Tipp. Wenn ne Fehlermeldung kommt, dann sag uns die auch. Hellsehen können wir hier nicht ;)

peter12 14. Apr 2005 12:37

Re: SQL operator ALL
 
entschuldige Fehlermeldung

Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 7, char 27.
all.

peter

DP-Maintenance 14. Apr 2005 12:46

DP-Maintenance
 
Dieses Thema wurde von "sakura" von "VCL-Komponenten und Controls" nach "Datenbanken" verschoben.

kiar 14. Apr 2005 13:01

Re: SQL operator ALL
 
hallo,

Natürlich sollte auch der DB Server angegeben werden :wall:

Es sieht so aus, als würden alle Felder der Tabelle Adresse einbezogen, dann könnte mann auch schreiben
SQL-Code:
Select Distinct * From Adresse......
,oder ?


raik

jim_raynor 14. Apr 2005 13:16

Re: SQL operator ALL
 
Zitat:

Zitat von kiar
Es sieht so aus, als würden alle Felder der Tabelle Adresse einbezogen, dann könnte mann auch schreiben
SQL-Code:
Select Distinct * From Adresse......
,oder ?

Nein, da es ein Join ist, würde er alle felder aus allen Tabellen übertragen, was sicherlich nicht der Sinn ist. Aber eventuell funktioniert
SQL-Code:
Select Distinct Adresse.* From Adresse......

peter12 14. Apr 2005 20:53

Re: SQL operator ALL
 
habe Lösung

select Distinct ADRESSE.Nr ,ADRESSE.NAME, ADRESSE.VORNAME , ADRESSE.ANSCHRIFT , ADRESSE.PLZ ,ADRESSE.mbr, ADRESSE.ORT , ADRESSE.TEL , ADRESSE.HANDY , ADRESSE.GEBURTSDATUM , ADRESSE.SOZIALVER , ADRESSE.EINSATZGEBIET , ADRESSE.EINSATZORT , ADRESSE.EINSATZBEGIN , ADRESSE.EINSATZENDE from ADRESSE left outer join BERUF on ADRESSE.Nr = BERUF.ADRESSE left outer join vorgange on ADRESSE.Nr = vorgange.dn where BERUF.BEZEICHNUNG Containing 'Hilfskraft' and AGRAR = 'Wahr ' and not exists (select tag from tage where vorgange.einsatztag = tage.tag )

Robert_G 14. Apr 2005 21:01

Re: SQL operator ALL
 
Zitat:

Zitat von peter12
entschuldige Fehlermeldung

Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 7, char 27.
all.

@Raik, das kann doch nur Firebird oder Interbase sein. Andere DBs bringen sinnvolle Meldungen. :lol:

@Peter, hier wurde extra für die DB Sparte eine Erweiterung mit diesen netten Infos im Header gemacht.
Wäre ganz nett, wenn du das beim nächsten Mal auch verwendest. So weiß dann auch Raik, dass du mit Firebird/Interbase arbeitest. :mrgreen:

@topic
In FB/IB sollte man KEINE Subsets selektieren. Er wird die Abfrage für jeden Datensatz ausführen, der die davorliegenden Kriterien erfüllt. :shock:
Versuche das ganze also einfach auch in die JOIN-Wurst zu quetschen, die du dir da zusammengebastelt hast. ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz