Bin noch Angänger bei diesem Thema
Hier das Problem:
Es gibt z.b 100 Lieferanten mit der Nummer 1 bis 100
Gesuchter Lieferant hat Nummer 70
Bin noch Angänger bei diesem Thema
Ein einzelner Satz wird in Dataset und -table eingelesen.
sql = "Select TOP 1 * FROM LIEF "
sql += "WHERE Liefer = @hinkel"
selectLIEF = New SqlCommand(sql, conn)
Wenn ich einen Satz > 70 haben will, klappt das. Lieferant 71 wird angezeigt.
Wenn ich einen Satz
Natürlich kann man die Tabelle umsortieren. In diesem Beispiel kein Problem.
Kann aber bei gößerer Tabelle und schnellem Rückwärtslesen das Tempo arg verlangsamen.
Der CurrenyManager geht bei WPF nicht.
Gibt es eine Möglichkeit einen einzelnen Satz kleiner als aus der DB zu holen?
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Warum nicht einfach
SELECT * FROM Lieferant WHERE Nummer=70 ?
(Die Abfrage müsste mit allen SQL-Datenbanken funktionieren)
Gruß
Borlander
eben nicht.
Ich will den nächstkleineren. Und zwar ohne daß die DB vom ersten bis zum nächstkleiner ausgelesen wird.
Gruß
Kaktus7
Hallo,
Und woher soll die Datenbank wissen, welches die nächstkleinere
Nummer ist? Die Datensätzen müssen ja nicht physikalisch sortiert in der
Datenbank vorliegen. Die Reihenfolge kann also auch sein Nr=50 Nr=502 Nr=51 Nr=60
Ein Index auf die Nummernspalte sollte doch solche Operationen
beschleunigen, oder irre ich mich?
Gruss
ChrE
Dann eben
SELECT *
FROM Lieferant
WHERE Nummer ORDER BY Nummer DESC
LIMIT 1
oder
SELECT *
FROM Lieferant
WHERE Nummer = (
SELECT MAX(Nummer) FROM Lieferant WHERE Nummer )