ASCIIユニットセパレーターChar(31)を含むデータのvarcharを返すスカラー値関数があります。この結果をOrderBy句の一部として使用し、昇順で並べ替えようとしています。
私のスカラー値関数は、次のような結果を返します(参照用にスペルアウトされた印刷不可能な文字)
- ABC
- ABC(CHAR(31))DEF
- ABC(CHAR(31))DEF(CHAR(31))HIJ
昇順で注文すると、結果は次のようになると思います。
- ABC
- ABCDEF
- ABCDEFHIJ
代わりに、私は結果を完全に反対として見ています:
- ABCDEFHIJ
- ABCDEF
- ABC
これは印刷できない文字に関係していると今ではかなり確信していますが、理由はわかりません。なぜそうなるのかについて何か考えはありますか?
ありがとう