Laden...

Distinct auf Join?

Erstellt von Paulo vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.033 Views
P
Paulo Themenstarter:in
172 Beiträge seit 2005
vor 16 Jahren
Distinct auf Join?

verwendetes Datenbanksystem: SQL Server 2005

SELECT TOP (8) ext.extID, ext.Quote, ext.sourceTitle, ext.extRating, gf_game.catID, gf_game.URL, gf_game.Title
FROM gf_game_ext AS ext INNER JOIN
gf_game ON gf_game.gameID = ext.gameID
WHERE (ext.Approved = 1)
ORDER BY ext.extID DESC

Was ich erreichen möchte ist, dass die gameID jeweils nur einmal vorkommt. Also anstatt 10 "ext Datensätze" mit der gleichen gameID rauszulesen, sollen es nur die ersten 8 "ext Datensätze" mit einer "unique" gameID sein.

Ist das möglich? Ein SELECT DISTINCT am Anfang bringt leider nichts weil die ext Datensätze ja durchaus unterschiedlich sind..

Danke!

T
64 Beiträge seit 2007
vor 16 Jahren

hallo,

ich konnte leider nicht testen. Versuch mal bitte folgende code:

Select distinct top(8) ext2.gameID From gf_game_ext AS ext2
inner join gf_game_ext as ext on ext2.gameID=ext.gameID
INNER JOIN gf_game ON gf_game.gameID = ext.gameID
WHERE (ext.Approved = 1)
ORDER BY ext.extID DESC

gruß

Timur Tas

149 Beiträge seit 2006
vor 16 Jahren

Hallo Paulo,

Bin mir nicht 100 Prozent sicher und kenn den Datenbestand ja nicht aber vielleicht hilft dir ja ein GroupBy weiter. Ich persönlich versuch so oft wie nur möglich DISTINCT zu umgehen da es bei großen Datenmengen extrem Performance kostet.

Gruß
roeb