Ich habe einen indizierte (aber nicht eindeutig) varchar Bereich des Mitarbeiter-IDs in einer Tabelle aufgestellt, und in einer Abfrage muß ich Zeilen zurückgeben, die exactly 4 numerical characters
sind, sondern auch über 1000Warum sollte ich "zwischen X und Y" in einem Varchar-Feld in SQL nicht verwenden, um eine Zahl zurückzugeben?
Ich habe auf verschiedene Fragen gefunden hier über die Verwendung von Validierungsmethoden, um zu überprüfen, ob das Feld 0-9 Zeichen enthält oder keine az-Zeichen usw. enthält, die jedoch nicht mit dieser Frage in Zusammenhang stehen.
Hintergrund:
ich eine Tabelle mit verschiedenen Werten haben, setzen Probe wie folgt:
EmployeeID
----------
6745
EMP1
EMP2
1874
LTST
5694
0014
Was würde ich alle Werte außerEMP1
, zu tun ist Rückkehr EMP2
, LTST
und .
Meine Frage ist, gibt es irgendwelche Gründe, warum ich nicht eine Where-Klausel wie where EmployeeID between '1000' and '9999'
verwenden sollte? Der Grund dafür, dass employewid ist eine Varchar-Spalte
Wenn ich das tun kann, sollte ich auch nach Mitarbeiter-ID bestellen, oder spielt das keine Rolle?
Rückkehr alle Werte außer EMP1, EMP2, LTST und 0014. Was für dies ist der Grund .you ein tun zwischen genauso, wie Sie in Frage gestellt haben. Was ist das Problem, das Sie konfrontiert sind – TheGameiswar
@TheGameiswar meine Frage ist, ob es Gründe gibt, dass ich nicht 'zwischen' auf diese Weise verwenden sollte, dh konnte es unerwartete Ergebnisse zurückgeben, die nicht numerisch sind wir lesen sie – laurencemadill