Hilfe bei Abfrage

18/06/2009 - 15:29 von Chris | Report spam
Hallo NG Gemeinde,

hoffe Ihr könnt mir einen Tipp für eine Abfrage geben.

Aus einer Angebotsdatenbank möchte ich von allen Kunden (kdr) das
letzte Angebot sehen.

Tabelle sieht so aus

id Lief Betrag Project
1 450 1000 1
2 747 2000 1
3 747 1950 1
4 321 2200 1
5 321 2100 1
6 321 2000 1


Ergebnis soll sein :

Immer das letzte Angebot eines Lieferanten.
Also


6 321 2000 1
3 747 1950 1
1 450 1000 1

über einen Hinweis wàre ich sehr dankbar.

Schau
Chris
 

Lesen sie die antworten

#1 Frank Kalis
18/06/2009 - 15:48 | Warnen spam
On 18 Jun., 15:29, Chris wrote:

Aus einer Angebotsdatenbank möchte ich von allen Kunden (kdr) das
letzte Angebot sehen.

Tabelle sieht so aus

id    Lief       Betrag    Project
1     450      1000           1
2     747      2000           1
3     747      1950           1
4     321      2200           1
5     321      2100           1
6     321      2000           1

Ergebnis soll sein :

Immer das letzte Angebot eines Lieferanten.
Also

 6     321      2000           1
 3     747      1950           1
 1     450      1000           1

über einen Hinweis wàre ich sehr dankbar.




Sofern sich das letzte Angebot als MAX(ID) definiert und ID bereits
eindeutig, kann man folgendes machen:

SELECT
*
FROM
tabelle T
JOIN
(SELECT
Lief, MAX(id) AS ID
FROM
tabelle
GROUP BY
Lief) X ON T.ID = X.ID

Ansonsten müsste man noch Lief in die JOIN Bedingung aufnehmen. Im SQL
Server 2005 und höher kann man auch ROW_NUMBER() verwenden.
Frank Kalis
Microsoft SQL Server MVP
Webmaster: http://www.insidesql.org

Ähnliche fragen