• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:最大値が抽出できない!)

フィールドの最大値が抽出できない! なぜでしょうか?

このQ&Aのポイント
  • フィールドの最大値を出すために使用しているSELECT MAX文で、数値が9999を超えた場合に常に9999を最大値として返してしまう問題が発生しています。
  • フィールドの数値が9999を超える場合でも、正しい最大値を返すためには、SELECT文の修正が必要です。
  • フィールドの数値が9999を超えた場合に正しく最大値を取得するためには、データベースの設定やフィールドの型の変更が必要になるかもしれません。

質問者が選んだベストアンサー

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5320/13881)
回答No.1

カラムの型がVARCHERだからです。 VARCHERは文字列型なので、データを数値ではなく文字列として検索しMAXを探しています。 文字列比較は左側の文字から順番に1文字ずつ比較しますので、1と9では9の方が大きいと判断されます。 従って、9999 と 10001 では 9999 の方が大きいと判断されます。

ken2547
質問者

お礼

ご丁寧に教えていただき、ありがとうございます。

すると、全ての回答が全文表示されます。

関連するQ&A