select distinct funktioniert nicht wie erwartet
Studenten-Gruppe Tabelle:
STDNT_GROUP
studentId,CollegeID,studentgroup,flag
1,007,panthers,y
2,003,owls,n
3,007,owls,y
1,007,texans,y
2,003,texans,n
Erwartete Ausgabe
1,007
2,003
3,007
Möchte ich einzigartige Studenten-ids, sowie deren jeweiligen Hochschule-ids.
Habe ich versucht, diese Abfrage:
select distinct(studentId),collegeID from;
und
select studentId,collegeID from STDNT_GROUP where studentId in(select distinct(studentId) from STDNT_GROUP)";
Mehr vertraut mit tSQL aber nicht
In Runden Klammern steht oder nicht, die Abfrage
select studentId, collegeID from STDNT_GROUP group by studentId
Arbeit?In Runden Klammern steht oder nicht, die Abfrage
SELECT DISTINCT studentId, CollegeID FROM STDNT_GROUP
sollte die gleiche Arbeit.InformationsquelleAutor sriram | 2012-03-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit
DISTINCT
ohne Klammern sollte bekommen, was Sie wollen.DISTINCT
sollte gedacht werden als Ziffer, sondern als eine Funktion übergeben Sie den Namen einer Spalte als argument. Es gibt den Satz von unterschiedlichen Zeilen über die Obermenge von der Abfrage zurückgegeben wird, anstatt unterschiedliche Werte in einer einzelnen Spalte.Vertrauen Sie nicht auf die Datenbank, eh? Gut, wenn irgendeine der Zeilen in Ihrer Ergebnismenge nicht eindeutig ist, dann
SELECT studentid , collegeid , COUNT(*) FROM ( SELECT DISTINCT studentId, CollegeID FROM STUDENT_GROUP ) GROUP BY studentid , collegeid HAVING COUNT(*) > 1;
würden wieder einige Zeilen.Ich habe keine Oracle-handy zu testen, aber ich sehe keinen Grund für die Abfrage nicht zu funktionieren (genau das gleiche) mit Klammern.
InformationsquelleAutor Michael Berkowski
Können Sie diese unsortierte Ergebnisse:
Oder so:
Oder fügen Sie eine order by-Klausel, um alle von Ihnen, um Sie abzurufen, um:
select distinct studentId, collegId from stdnt_group order by studentId, collegeId
oderselect studentId, collegeId from stdnt_group group by studentId, collegeId order by studentId, collegeId
. Ohneorder by
die Ergebnisse kann oder kann nicht sortiert werden.Jede Referenz für die Behauptung, dass
DISTINCT
nicht Sortieren, währendGROUP BY
sortiert die Ergebnisse?Meine schlecht, verpasste die Bestellung durch. Aktualisiert meine Antwort.
InformationsquelleAutor Mosty Mostacho
Kann das Problem Ihrer Nutzung paranthesis in den verschiedenen rufen. Probieren Sie es einfach:
Kann es hilfreich sein, das zu bieten, was Ausgabe, Sie sind eigentlich immer im Gegensatz zu dem erwarteten Ausgang. Das kann uns helfen, besser zu bestimmen, whatmay werden, die falsch gehen.
InformationsquelleAutor Spags