varchar(25) 形式で保存された 16 進数値で max 演算子を使用すると問題が発生します。
数値は次のようになります。
0
1
0A
0F
FF
10A
今、私がこのようなことをすると:
SELECT MAX(CONV(number, 16, 10)) as number FROM `numbers` WHERE 1
予想される 10A (266) ではなく、FF (255) を取得します。
どうしたの?長さが違うのでしょうか?しかし、なぜ0とFFで機能するのでしょうか? ヒントは素晴らしいでしょう!
前もって感謝します。