Access2002で、特定のカラムについてフィールドサイズがある一定の数値(例えば100)をオーバーしているものだけを抽出するクエリを作りたいのですが、抽出条件をどう書けばよいのかよくわかりません。

ご存知の方、教えていただけると幸いです。
よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/08/01 15:32:45
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:nintendogs No.1

回答回数42ベストアンサー獲得回数4

ポイント10pt

カラムのフィールドサイズとはテーブル設計のお話ということでしょうか?

格納されているデータそのものではないといういことでしょうか??



ダミー

Yahoo! JAPAN

id:steppingstone

説明が足りなかったようで申し訳ありません。

設計ではなく、実際に格納されているデータの文字数が、ある一定の数字を超えているものを抽出したいと思っています。

2006/08/01 14:58:41
id:ohmix1 No.2

回答回数235ベストアンサー獲得回数14

ポイント100pt

こういうこと?


SELECT * FROM テーブル WHERE LEN(カラムA) > 5 ;


カラムAが5文字を超える場合のみレコードを抽出します。

この場合の5文字はバイト数ではなく文字数。

バイト数の場合は、LENB()関数を利用します。


http://oshiete1.goo.ne.jp/kotaeru.php3?q=1890789


以上

id:steppingstone

うっ…

自分のキャパを超える領域に踏み込んでしまった気がしますが、とりあえずやってみます(汗)

ありがとうございます。

2006/08/01 15:12:00
id:nintendogs No.3

回答回数42ベストアンサー獲得回数4

ポイント100pt

クエリのデザインビューでは

たとえば、フィールド名[社員名]のなかから5文字以上を抽出

したければ、

そのテーブルを表示し、

フィールドのところに  Len([社員名]) もしくは LenB([社員名])

抽出条件のところに >=5 

と記入してみてください。


dami

Yahoo! JAPAN

id:steppingstone

ご回答ありがとうございます。

で…できました!

2006/08/01 15:30:46
id:taknt No.4

回答回数13539ベストアンサー獲得回数1198

ポイント100pt

フィールドに

LenB([テーブル名].[項目名])

抽出条件に

>100

とか 入れればいいですよ。


http://www.mahoutsukaino.com/ac/ac2002/ac2002/sonota/query/0...

id:steppingstone

皆様、ご回答ありがとうございました。

お蔭様で大変助かりました。

これで終了とさせていただきます。

取り急ぎ、御礼まで。

2006/08/01 15:31:59
  • id:llusall
    LenB関数で、全角2バイト、半角1バイトを期待している場合は駄目です。
    (Unicodeの為)
    StrConv関数を噛ませしょう
    http://www.accessclub.jp/supbeg/131.html

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません