wie am besten Abfrage erzeugen

19/06/2009 - 19:58 von Frank Derber | Report spam
Hallochen,
ich habe eineTabelle tbStamm_Artikel und eine Untertabelle tbZO_Art_ArtAusf
.
Mein Ziel:
Alle Datensàtze ermitteln, die keinen Eintrag in der Untertabelle haben.
Prinzipiell ist das ja gut über eine Gruppierungsabfrage zu machen wie ich
sie unten habe.
Mein Problem:
Ich brauche nur alle Felder der Artikel-Tabelle (einige!) und eine select *
gibts bei gruppenabfragen nicht, so daß ich alle felder einzeln angeben muß
mit first (feldname) as feldname.

Gibt es da evtl. eine bessere Abfragemöglichkeit?

vielen dank.- grüße von frank




SELECT DISTINCTROW tbStamm_Artikel.id_AR,
Count(tbZO_Art_ArtAusf.id_ZU_AR_AA) AS Anzahlvonid_ZU_AR_AA
FROM tbStamm_Artikel LEFT JOIN tbZO_Art_ArtAusf ON tbStamm_Artikel.id_AR =
tbZO_Art_ArtAusf.id_AR
GROUP BY tbStamm_Artikel.id_AR
HAVING (((Count(tbZO_Art_ArtAusf.id_ZU_AR_AA))>0));
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
19/06/2009 - 22:39 | Warnen spam
Hallo Frank,

"Frank Derber" schrieb:

ich habe eineTabelle tbStamm_Artikel und eine Untertabelle tbZO_Art_ArtAusf .
Mein Ziel:
Alle Datensàtze ermitteln, die keinen Eintrag in der Untertabelle haben.



Sowas hier?

SELECT *
FROM tbStamm_Artikel
WHERE <IdSpalte> NOT IN
(
SELECT <ArtikelIdSpalte>
FROM tbZO_Art_ArtAusf
)

Ich brauche nur alle Felder der Artikel-Tabelle (einige!) und eine select * gibts bei gruppenabfragen nicht, so daß ich alle
felder einzeln angeben muß mit first (feldname) as feldname.



a) * ist böse[TM]
b) Was willst Du hier mit FIRST( ... )?

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen