Bitte helfen, ich möchte meine SortIDs mit neuen aufsteigenden Zahlen aktualisieren, kann aber nicht herausfinden, wie, weil FileMaker SQL ist ziemlich begrenzt.Sortierungsnummern können nicht mit SQL-92 (Filemaker) aktualisiert werden
Ich kann FileMaker nicht dazu verwenden, weil ich das aktuelle FoundSet nicht verlieren möchte.
Es gibt eine FileMaker-Funktion RecordNumber, die ich hier verwende. Es gibt immer aufsteigende Zahlen zurück, egal wie das Ergebnis sortiert ist.
Hier ist meine Tabelle mit Record:
SELECT SortID, RecordNumber FROM Beleg
WHERE Year (Valuta) = 2016
AND Ursprungskonto = 1210
ORDER BY SortID
Produziert:
.5 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
10.000001 11
10.000002 12
sieht gut aus. Aber ich kann das ORDER BY nicht verlassen, wenn ich UPDATE benutze, erhalte ich einen Fehler.
Wenn ich jedoch ORDER BY herausnehme, werden meine SortIDs falsch aktualisiert. Dies ist, was die Liste aussieht, wenn ich die ORDER BY auslassen:
SELECT SortID, RecordNumber FROM Beleg
WHERE Year (Valuta) = 2016
AND Ursprungskonto = 1210
produziert diese:
2 1
3 2
.5 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
10.000001 11
10.000002 12
die Anweisung:
UPDATE Beleg SET SortID = RecordNumber
WHERE Year (Valuta) = 2016
AND Ursprungskonto = 1210
ich die falschen Werte in SortID . 0.5 sollte mit 1 und nicht mit 3 aktualisiert werden.
Ich bin verloren. Irgendwelche Ideen, wie man aufsteigende Zahlen in meine Sortier-Spalte schreibt?
Vielen Dank!
Gary
Macht keinen Sinn – sagi
Es gibt keine interne Reihenfolge in den meisten SQL RDBMS. So können Sie aktualisieren, ohne sich darüber Gedanken zu machen. –
Wenn ich update, wird es mit den falschen Zahlen aktualisiert. Da das Ergebnis in der Reihenfolge ist, in der die Datensätze erstellt werden, nicht gemäß den in SortID gespeicherten Werten. –