Veröffentlicht 19. Mai 200322 j Hallo, das Ergebnis folgender SQL-Scripts sollte eigentlich äquivalent sein: aus der Tabelle myTable, die die Spalten id (NUMERIC) und wert (NUMERIC) enthält, soll die id selektiert werden und in der Ausgabe jeder id eine Zufallszahl Sort zugeordnet werden. Das Ergebnis soll anschließend nach Sort geordnet werden. Nun habe ich festgestellt, dass Script 1 die Ausgabe nicht nach der Spalte Sort sortiert, während Script 2 und Script 3 die Ausgabe sehr wohl sortieren. Anscheinend ist es so, dass die Sortierung nur dann durchgeführt wird, wenn eine Operation mit dem Ergebnis von Rand() und einer Spalte erfolgt. Wer weiß, warum das so ist? Gruß, Technician P.S.: Ich kann die Scripts nicht auf einer Datenbank laufen lassen, da ich diese Woche nur auf Access zugreifen kann (und dieses kein Rand() unterstützt). Script 1: SELECT id, Rand() AS Sort FROM myTable ORDER BY Sort Script 2: SELECT id, 0*id+Rand() AS Sort FROM myTable ORDER BY Sort Script 3: SELECT id, 0*wert+Rand() AS Sort FROM myTable ORDER BY Sort
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.