- ベストアンサー
条件抽出 [ACCESS 2000]
テーブルには6項目/1セットのデータがあります eg 1:製品番号 8桁整数 [テキスト型] 2:品名 [テキスト型] 3:入庫数 [テキスト型] 4:出庫数 [テキスト型] 5:在庫数 [テキスト型] 6:備考 [テキスト型] が在ります。 ここで教えていただきたいのですが 項目1:製品番号(8桁整数)が (1)下2桁が「00」 の製品番号のデータ1セット(6項目) (2)5桁目が「3」 の製品番号のデータ1セット(6項目) を抽出したいのです 抽出方法は特に指定は無いのですが出来るならば、 (1)の条件を満たし抽出されたデータ(1セット)を 同じテーブルの上の方に一括して表示したいです 宜しくお願い申し上げます
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
抽出方法のみ回答します。 (1) SELECT * FROM テーブル WHERE 製品番号 LIKE "*00"; クエリーデザインビューでは製品番号の抽出条件に「LIKE "*00"」と入力する (2) SELECT * FROM テーブル WHERE 製品番号 LIKE "????3*"; クエリーデザインビューでは製品番号の抽出条件に「LIKE "????3*"」と入力する No2の場合関数を含むクエリーは実行速度では不利になりますのでLIKEで解決できるならLIKEを使いましょう。 (1)及び(2)の結果を同時に出したい場合は(SQLを直接記述してください。) SELECT * FROM テーブル WHERE 製品番号 LIKE "*00" UNION SELECT * FROM テーブル WHERE 製品番号 LIKE "????3*"; UNION ALLにすると若干結果が変わります。 なお、SQL文かなり省略した記述方法になっておりますの実際に保存した時と異なります。
その他の回答 (2)
- k_eba
- ベストアンサー率39% (813/2055)
基本的には、(1)も(2)も同じ関数を使用します Mid([製品番号],7,2) 解説 製品番号の7桁目から2桁を抽出しなさい 使用方法 クエリーの最後のフィールドに 並び順:IIF(Mid([製品番号],7,2)="00",1,2) と指定して並び替えでいかがでしょうか がんばって下さい。なにか有れば補足して下さい。
- toro010915
- ベストアンサー率21% (3/14)
抽出ですがクエリの抽出条件を たとえば Like "??????00"にすると(1)は抽出できると思います 詳細はヘルプの「値を検索するためのワイルドカード文字の使用について」を参照してください