またまた、お世話になります。
クエリでの抽出を行う方法についてアドバイスをお願いします。
以下、状況を説明します。

抽出条件をつけようとしているフィールドはテキスト型で、通常は、"001""010""101"など3桁の数字が入ってます。稀に"011A"というふうに、数字3桁+アルファベット1文字が入ることもあります。(ちなみに入る数字は001~200までです。)
このフィールドに対し、3桁の数字部分をそのまま数値と見なして、例えば"010以上"で抽出したいのです。
単に">=010"なんてやってもダメですよね。(←注:これはやってみた訳ではなく、私の想像です)
どのようにすれば良いでしょうか。よろしくお願いいたします。

A 回答 (1件)

MID(項目名,1,3)>=010



解説
 MID関数で1~3桁分抽出して判定する

頑張って下さい
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。やっぱり、便利な関数があったんですね。
助かります。

お礼日時:2002/02/21 15:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aと関連する良く見られている質問

QFileMakerで6桁の数字を1桁づつ各フィールドにいれたい!

FileMakerで6桁の数字を1桁づつ各フィールドに移したいのですが。

564297 が合計フィールドに入っているとします。

それを

100000の位フィールドに5
10000の位フィールドに6
1000の位フィールドに4
100の位フィールドに2
10の位フィールドに9
1の位フィールドに7

と各フィールドに数字を分けたいのですが
どうしたらいいでしょうか?
もちろん位別にわけたいです。
質問がわかりにくくてごめんなさい。

Aベストアンサー

ANo.1、3です。
たびたび訂正
  T = GetAsText(金額);L = Length(T)];

  T = GetAsText(int(金額));L = Length(T)];
でお願いします。

ANo2の方の方法ははシンプルでいいですね!

でもそれだけだと小額でも0が表示されますが
それはいいのかな?
まあif分岐を追加すればいいだけですが

QAceess2000で8桁の数字を日付型のフィールドにインポートする方法

Access2000でマクロを使って簡単にデータ取り込み等を実現しようとしています。
しかし、インポート元のCSVに、日付を表わす8桁の数字(2000年12月1日なら20011201)があり、これを日付型のフィールドにインポートしようとすると、データが削除されてしまいます。
どなたか、簡単にデータを変換、取り込む方法をご存知の方がおりましたら、お教えください。お願いします!!!

Aベストアンサー

横から失礼します。
オフコン系のシステムを使っているところではよくある話です。
まずは、インポートする前にCSVファイルをリンクします。
日付フィールドは文字型とします。
リンクしたテーブルを使って、アクションクエリでテーブルを更新・作成する手順がいいと思います。

日付の変換方法は以下の式で実現できます。
CDate(Left(RS!日付, 4) & "/" & Mid(RS!日付, 5, 2) & "/" & Mid(RS!日付, 7, 2)")

QAccessのクエリでフィールドの一番大きな数字を抽出させるには?

OSはWin98SE
Access2000です。
多分簡単なことなのかもしれないのですが、追加クエリの抽出条件を使って、
その列(更新回数)でいちばん大きな数字のみ別テーブルに抽出(追加)させたいのですがその式がわからず悩んでいます。

例(主キーなし)
店番号|商品番号|更新回数|金額|・・・
001 |A021  |  2 |300 |・・・
002 |A034  |  1 |200 |・・・
001 |A122  |  1 |150 |・・・
001 |A043  |  3 |500 |・・・

上記で店番号001が3データ入っている中の更新回数が3のデータのみ別のテーブルに追加したいのですが、最大を求めるのでMaxやDMaxを使用したらよいのかな?などと思ったのですが、その先の式の書き方がわからないのでどなたか教えていただけませんか。
どうぞよろしくお願いします。

Aベストアンサー

三度storkです。

蛇足ですが、先ほどの回答は、SQLを直書きするものだったんで、練習用にGUIでの操作で最新データの取り出し方を補足しておきます。

from句に入っているSQLをクエリとして保存してください。
クエリ名は、[最新データ]
-------------------------------------------
select 店番号,max(更新回数) as max更新回数
from [PC売上_T] group by 店番号
-------------------------------------------
どんなクエリになっているかは、デザインビューとデータシートビューで確認してください。

もうひとつクエリを作ります。
デザインビューで[PC売上_T]とさっき作った[最新データ]を追加して、店番号で結合し、さらに更新回数で結合します。結合線がふたつ出来ます。

これで最新のデータのみを抽出するクエリの出来上がりです。

この二つのクエリを一回で済ませると、#1のSQLになります。クエリを二つに分けていると誤ってクエリ[最新データ]を削除すると動作しなくなるので、出来るだけひとつにしましょう。

三度storkです。

蛇足ですが、先ほどの回答は、SQLを直書きするものだったんで、練習用にGUIでの操作で最新データの取り出し方を補足しておきます。

from句に入っているSQLをクエリとして保存してください。
クエリ名は、[最新データ]
-------------------------------------------
select 店番号,max(更新回数) as max更新回数
from [PC売上_T] group by 店番号
-------------------------------------------
どんなクエリになっているかは、デザインビューとデータシートビューで確認してくだ...続きを読む

QAccessのテーブルフィールド属性の抽出

Access2003で作成したデータベースで、各フィールド(IDや名前、住所など)の属性(数値型といったデータ型やさらなる詳細(「標準」「ルックアップ」で設定できる内容)、長整数型、値要求「いいえ」など)を一度に抽出することはできないでしょうか。

よろしくお願いします。

Aベストアンサー

抽出というのがどういう形を希望しておられるのか分かりませんが
[ツール][解析][データベース構造の解析]で
フール止め意、データ型、サイズ、プロパティー、インデックス名、フィールド、プロパティーなどをレポートに出すことならできます

Q文字型フィールドの数値データの抽出

mdbファイルを、VB6.0+ADO2.7で扱っています。

文字型フィールドに数値データが入力されたレコードを抽出したいのですが、何かよい方法はないでしょうか?
そのフィールドに文字型データが入力されているレコードもあり、それを除外したいのです。
SQLでも、.filterプロパティでも結構です。お知恵を下さい。

よろしくお願いします。

Aベストアンサー

Excel2000 VBA+ADO2.7 で試しましたが、
WHERE条件に IsNumeric(フィールド名) で良いのでは?

以下、試したプログラム
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim SQL As String
Dim dbName As String
Dim dbPath As String

dbName = "db1.mdb"
dbPath = ActiveWorkbook.Path & "\"

cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & dbPath & dbName & ";"

SQL = "SELECT * FROM T1 WHERE IsNumeric(Data);"
rs.Open SQL, cnn, adOpenForwardOnly

Do Until rs.EOF
 Debug.Print rs![Data]
 rs.MoveNext
Loop

Excel2000 VBA+ADO2.7 で試しましたが、
WHERE条件に IsNumeric(フィールド名) で良いのでは?

以下、試したプログラム
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim SQL As String
Dim dbName As String
Dim dbPath As String

dbName = "db1.mdb"
dbPath = ActiveWorkbook.Path & "\"

cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & dbPath & dbName & ";"

SQL = "SELECT * FROM T1 WHERE IsNumeric(Data);"
rs.Open SQL, cnn, adOpenForwardO...続きを読む


人気Q&Aランキング

おすすめ情報