• ベストアンサー

ACCESSでテーブルのMAX値(文字列を除く)をやりたい

ACCESS2000で1テーブル内の項目のMAX値を取りたいのですが、数値ではないのは除外したいです。 どのようにSQLを組んだらいいのでしょうか。 ex) テーブル名:a フィールド名:ID(string型) +--+ |01| +--+ | 2| +--+ |03| +--+ |04| +--+ |05| +--+ |06| +--+ |R1| +--+ 上記の項目でMAX値06を取りたいのですが SQL>select MAX(ID) as MaxID from a とすると「R1」がMAX値になる。 「06」をMAX値として取りたい。

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

  • ベストアンサー
  • gatyan
  • ベストアンサー率41% (160/385)
回答No.1

2行目のレコード(スペース+2?)のようなパターンを除くなら、項目の値が"0"以上":"(コロン 文字コードで9の次になる文字)未満とするwhere条件をつければいいと思います。 スペースで始まるものも必要なら、Val関数などで数値化して最大値を求めるとか。(R1を数値化すると、0になるのでとりあえずは最大値にはならないはず)

その他の回答 (1)

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.2

CLng 関数を使ってもいいかな? Select Max(CLng(ID)) As MaxID From a Where CLng(ID) = True

関連するQ&A