By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
438,333 Members | 1,226 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 438,333 IT Pros & Developers. It's quick & easy.

SQL Abfrage auf DB2 UDB V 8.1.6

P: n/a
Hallo Newsgroup.

Ich möchte eine Abfrage die ich im Access2003 erstellt habe auch in
der Befehlszentrale vom DB2 erstellen. Doch die Funktion "first" kennt
DB2 nicht. Anbei der SQL Code vom Access, das wird mein Problem genauer
erklären.

SELECT Tabelle.HARTNR, First(Tabelle.ARTNR) AS ARTNR, Tabelle.SAISKZ
FROM Tabelle
GROUP BY Tabelle.HARTNR, Tabelle.SAISKZ
HAVING (((Tabelle.SAISKZ)="XYZ"));
Das im Having im DB2 SQL nicht mit " sondern mit ' gearbeitet wird, ist
mir bekannt.

Zur Erklärung: in der "Tabelle" sind mehrere Datensätze bei denen die
HARTNR gleich ist, die ARTNR aber unterschiedlich ist. Ich will alle
Datensätze mit der jeweils ersten verfügbaren ARTNR filtern.

Bsp. der Tabelle

HARTNR ARTNR SAISKZ
22354 223541 XYZ
22354 223544 XYZ
22354 223549 XYZ
28775 287756 XYZ
28775 287759 XYZ

Also möchte in aus dem Beispiel die Sätze mit ARTNR = 223541 und
ARTNR = 287756.

Kann mir jemand mitteilen wie ich das in SQL auf einer DB2 UDB
hinbekomme?

Danke

Sascha

Nov 12 '05 #1
Share this Question
Share on Google+
4 Replies


P: n/a
Fr*****@gmx.de wrote:
Hallo Newsgroup.

Ich möchte eine Abfrage die ich im Access2003 erstellt habe auch in
der Befehlszentrale vom DB2 erstellen. Doch die Funktion "first" kennt
DB2 nicht. Anbei der SQL Code vom Access, das wird mein Problem genauer
erklären.

SELECT Tabelle.HARTNR, First(Tabelle.ARTNR) AS ARTNR, Tabelle.SAISKZ
FROM Tabelle
GROUP BY Tabelle.HARTNR, Tabelle.SAISKZ
HAVING (((Tabelle.SAISKZ)="XYZ"));
Das im Having im DB2 SQL nicht mit " sondern mit ' gearbeitet wird, ist
mir bekannt.

Zur Erklärung: in der "Tabelle" sind mehrere Datensätze bei denen die
HARTNR gleich ist, die ARTNR aber unterschiedlich ist. Ich will alle
Datensätze mit der jeweils ersten verfügbaren ARTNR filtern.

Bsp. der Tabelle

HARTNR ARTNR SAISKZ
22354 223541 XYZ
22354 223544 XYZ
22354 223549 XYZ
28775 287756 XYZ
28775 287759 XYZ

Also möchte in aus dem Beispiel die Sätze mit ARTNR = 223541 und
ARTNR = 287756.

Kann mir jemand mitteilen wie ich das in SQL auf einer DB2 UDB
hinbekomme?


Sascha,

O.B.D.A nimm MAX() oder MIN() :-)

Cheers
Serge

--
Serge Rielau
DB2 SQL Compiler Development
IBM Toronto Lab
Nov 12 '05 #2

P: n/a
Fr*****@gmx.de schrieb:
[viel Deutsches]

Hast du nicht gemerkt, dass du hier in einer englischsprachigen Gruppe
bist? Also postest du das ganze am besten noch mal auf Englisch!

Grüße,
--
Burkhard Schultheis
Tele Data Electronic, Wagnerstr. 10, D-76448 Durmersheim
Email: sc********@tde-online.de
Phone: +49 7245 9287-21
Nov 12 '05 #3

P: n/a
Sorry, ich habe nicht gemerkt dass diese Gruppe auf Englisch ist.
Die zweite Antwort hat mir aber weitergeholfen, danke.
Thanks Serge
Gruß

Sascha

Nov 12 '05 #4

P: n/a
Fr*****@gmx.de schrieb:
Sorry, ich habe nicht gemerkt dass diese Gruppe auf Englisch ist.
Die zweite Antwort hat mir aber weitergeholfen, danke.


Man sollte halt immer erst mal wenigstens _ein_ Posting lesen, bevor man
selbst schreibt!

Grüße,
--
Burkhard Schultheis
Tele Data Electronic, Wagnerstr. 10, D-76448 Durmersheim
Email: sc********@tde-online.de
Phone: +49 7245 9287-21
Nov 12 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.