SQL Server - INNER JOIN MIT DISTINCT
Ich habe eine harte Zeit wie folgt:
select a.FirstName, a.LastName, v.District
from AddTbl a order by Firstname
inner join (select distinct LastName from
ValTbl v where a.LastName = v.LastName)
Möchte ich einen join auf ValTbl aber nur für eindeutige Werte.
InformationsquelleAutor Nate Pet | 2011-12-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies:
Oder dies (es macht das gleiche, aber die syntax ist anders):
InformationsquelleAutor kol
Nate, Ich denke, dass Sie eigentlich ein guter start für die richtige Antwort direkt in Ihre Frage (Sie brauchen nur die richtige syntax). Ich hatte das exakt gleiche problem, und setzen Sie deutlich in eine sub-query war in der Tat weniger kostspielig, als das, was andere Antworten hier vorgeschlagen haben.
InformationsquelleAutor Denis M. Kitchen
Es ist nicht das gleiche tut ein select distinct am Anfang, weil Sie verschwenden alle berechneten Zeilen aus der Ergebnismenge.
versuchen.
NATURAL JOIN
istincorrect syntax
im MSSQL 2008 R1InformationsquelleAutor AlfredoVR
hinzufügen "distinct" hinter "select".
InformationsquelleAutor Chris Brickhouse
Können Sie verwenden, CTE, um die unterschiedlichen Werte der zweiten Tabelle, und dann kommen Sie, die mit der ersten Tabelle.
Sie müssen auch die unterschiedlichen Werte basierend auf der LastName-Spalte. Sie tun das mit einer Row_Number() partitioniert, indem der Nachname und sortiert nach Vorname.
Hier ist der code
InformationsquelleAutor Sadra Abedinzadeh
select distinct a.Vorname, ein.Nachname, v. Bezirk
von AddTbl ein
inner join ValTbl v
auf einem.LastName = v. Nachname
um von einem.Vorname;
hoffe, das hilft
InformationsquelleAutor Monwabisi Labeanzo