私は表の従業員IDのインデックス付き(ただし、一意ではない)varchar型のフィールドを持っている、とクエリで私はexactly 4 numerical characters
ある行を返す必要があるだけでなく、1000数値を返すためにSQLのvarcharフィールドで「XとYの間」を使用しないでください。
の上に、私は上のさまざまな質問を見つけましたフィールドに0〜9文字が含まれているかどうか、またはaz文字などが含まれていないかどうかを確認するための検証メソッドの使用についてはここで説明しますが、これらはこの質問とは無関係です。
背景:
私は次のようにサンプルをセット、さまざまな値を持つテーブルを持っている:
EmployeeID
----------
6745
EMP1
EMP2
1874
LTST
5694
0014
私は何をしたいのは、すべての値にEMP2
、EMP1
以外を返すです、LTST
および0014
。
私の質問は、私がをに使用してはならない理由がありますか?where EmployeeID between '1000' and '9999'
のようなWhere節を使用していますか?この従業員の理由はvarcharの列です
これを行うことができれば、従業員IDで注文する必要がありますか、これは関係ありませんか?
リターンEMP1、EMP2、LTSTと0014.除くすべての値を。あなたが間に行うことができますあなたが直面している問題は何ですか? – TheGameiswar
@TheGameiswar私の質問は、このように「間」を使用すべきではない理由があるかどうかです。つまり、数値ではない予期しない結果を返すことができます。私たちはそれらを読む – laurencemadill