hugi1987
Goto Top

SQL Befehl Bedingung

Hallo zusammen,

ich habe mal eine Frage zu einer MSSQL-Abfrage, bin irgendwie unfähig es hinzubekommen und nach langem selbstprobieren frag ich nun doch hier mal nach.
Ich habe eine Tabelle mit 3 Spalten und folgendes Beispiel:

69 1000923 184
46 1004051 185
40 1006924 183
44 1006924 184
42 1007062 184
39 1007062 183
2 1007558 183

Nun benötige ich einen Select Befehl um nur die Datensätze anzeigen zu lassen, wenn bei der Spalte 2 die Nummer doppelt vorkommt, nur der Datensatz mit der höchsten ID aus Spalte 1 aufweist.

Die Zielabfrage soll also wie folgt aussehen:

69 1000923 184
46 1004051 185
44 1006924 184
42 1007062 184
2 1007558 183

Könnt ihr mir hierzu helfen?

Vielen Dank face-smile

Content-Key: 207637

Url: https://administrator.de/contentid/207637

Printed on: April 19, 2024 at 22:04 o'clock

Member: smikey
smikey Jun 06, 2013 at 16:47:49 (UTC)
Goto Top
Hallo,
versuche das doch mal.

select a, b, c from table as zjoin (select max(a) as ma_a, b from table as y join (select distinct(b) as moegl from table) as x on x.moegl = y.b group by b) as x on x.ma_a = z.a ;
Member: Biber
Biber Jun 06, 2013 updated at 18:13:35 (UTC)
Goto Top
Moin smikey,

würde nicht ein JOIN über zwei Tabellen ausreichen?
 select  a , b, c from tabelle t1, 
 (select max(a) as amax, b as nochmalb from tabelle group by b) t2 
where t1.a = t2.aMax and t1.b = t2.nochmalb 

Würde doch auch dieses hier liefern
A	B	C
69	1000923	184
46	1004051	185
44	1006924	184
42	1007062	184
2	1007558	183

Grüße
Biber
Member: smikey
smikey Jun 06, 2013 at 20:36:54 (UTC)
Goto Top
Hoi Biber,

jop würde beides funktionieren ,-)

Manchmal geht es eben einfach und umständlich face-wink ...
Member: Hugi1987
Hugi1987 Jun 07, 2013 at 10:05:52 (UTC)
Goto Top
cool, danke ihr zwei, es hat funktioniert. klasse klasse klasse face-smile

viele grüße
Member: Biber
Biber Jun 10, 2013 updated at 18:29:58 (UTC)
Goto Top
Moin Hugi1987,

danke für die Rückmeldung.
Bitte denke nächstes Mal daran, den Beitrag als "Gelöst" zu markieren (für die nachfolgenden LösungssucherInnen).
Dieses Mal mach ich das eben.

Grüße
Biber