Accessのクエリでたとえば下図のようなクエリがあるのですが、
------------------------------------------------------------
製品番号 | 商品番号 | 品 名 | 品名カナ
------------------------------------------------------------
0123456789ABCD | 789ABCD | ボールペン(黒)| ボールペン
123456789ABCDE | 89ABCDE | 万年筆 | マンネンヒツ
・ ・ ・ ・
・ ・ ・ ・
このデータの「製品番号」の上位7桁だけ抽出したくてヘルプで関数をいろいろ調べてみたのですがよくわからず困っています.
前回違う質問をさせていただいたときに,更新クエリでRIGHT関数を使って下位7桁の抽出の仕方を教えていただいたのですが,その関数の逆版(LEFT関数??)のような感じの関数は存在しないのでしょうか?
ありましたらぜひ教えていただけないでしょうか.
どうぞよろしくお願い致します.
No.1
- 回答日時:
Left関数ありますよ。
SQLならこんな感じ ==========================
SELECT t1.aa, t1.bb, t1.cc
FROM t1
WHERE ((Left(aa,5) ="12345"));
===========================================
また、Likeを使用することでも同様の機能が実現できます。
SQLならこんな感じ ==========================
SELECT t1.aa, t1.bb, t1.cc
FROM t1
WHERE (((t1.aa) Like '12345*'));
===========================================
クエリを作成してSQLビューで確認してみてください。
この回答への補足
早速のご回答ありがとうございます.
私の知識不足で申し訳ないのですが,SQLがよくわからないのでおかしなことを言ってましたらすみません.
・教えていただいたSQLを作成したクエリの下に追加してみたのですが,実行すると「SQLステートメントの後に文字が見つかりました.」と言う警告が出てその先に進めません,作成したクエリの中に埋め込んでみたりもしたのですが、やはり同じメッセージが出てしまいました.
入力するところが間違っているのでしょうか?
申し訳ありませんが、アドバイスお願い致します.
No.2ベストアンサー
- 回答日時:
わかりにくい説明でしたね、ごめんなさい。
では、クエリを新規作成してみましょうか。
ご質問にあがっているテーブルのカラム名がわからないので以下のように仮定しますね。
商品テーブル:
・製品番号
・商品番号
・品名
・品名カナ
抽出条件に使用するカラム:製品番号をLeft関数で7文字分とってきます。
フィールドには以下のように入力することとなると思います。
Left([製品番号],7)
このフィールドの抽出条件に抽出したい文字列を入力してください。
"1234567"
SQLビューでみるとこんな感じになるのでは?
SELECT 商品テーブル.製品番号, 商品テーブル.商品番号, 商品テーブル.品名 ,商品テーブル.品名カナ
FROM 商品テーブル
WHERE ((Left(商品テーブル.製品番号,7) ="1234567"));
これで、必要とするデータが抽出されると思います。
補足ですが...
Left関数はの構文は以下のようになっていますので、文字列の部分にテーブルのカラム名と必要な文字数を記述してやります。
LEFT(文字列, 文字数)
ヘルプで"LEFT関数"を検索すると引っかかると思います。
takasgyさんありがとうございます!
丁寧な説明でとてもわかりやすく,すぐに試してみましたところ成功しました.
また,大変勉強になりました.
本当にありがとうございました! m(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- その他(データベース) 20万行あるデータを動かしたい 2 2023/06/13 15:21
- Access(アクセス) お世話になります ACCESSを使用しています 下記のクエリデータ(1)があります 商品名 行数 A 1 2022/09/05 08:52
- Excel(エクセル) Excelでデータを抽出するに良い方法 9 2023/02/06 12:42
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Visual Basic(VBA) EXCEL関数LOOKUPとFILTERについての質問です 1 2022/12/21 05:53
- Excel(エクセル) エクセルで重複データから重複を削除して指定の列に抽出したい 11 2022/05/11 11:26
- Access(アクセス) Accessクエリで年月フィールドを年のみで抽出する方法について 2 2022/08/29 18:10
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ビューで引数を使いたい
-
ACCESS 一番最新の日付の金額...
-
IFで条件を分岐させてのINSERT...
-
Accessで在庫管理を
-
INSERT文でサブクエリ
-
二つの表の項目を比較して値を...
-
DB2 業種毎に連番をつけたいの...
-
年齢分布テーブルの再集計SQL
-
「マスタ」と「テーブル」の違...
-
ACCESSのSQLで、NULLかNULLでな...
-
数百万件レコードのdelete
-
[ BETWEEN ] vs [ >= AND <= ]
-
ACCESS2007 フォーム 「バリア...
-
3つ以上のテーブルをUNIONする...
-
Access VBA [リモートサーバー...
-
sqlserverで集計結果をUPDATEし...
-
SELECT時の行ロックの必要性に...
-
2つの項目が重複するレコード...
-
重複するキーから一番古い年月...
-
accessテーブル作成クエリを実...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS 一番最新の日付の金額...
-
ビューで引数を使いたい
-
IFで条件を分岐させてのINSERT...
-
大学でSQLの授業があるのですが...
-
二つの表の項目を比較して値を...
-
Accessで在庫管理を
-
SQLについて質問です。 テーブ...
-
SQL 件数取得を速くしたい
-
複数のテーブルから同じ条件で...
-
空のテーブルの判別
-
INSERT文でサブクエリ
-
SQLの書き方
-
DB2 業種毎に連番をつけたいの...
-
Insert Into Select での重複に...
-
Access関数について クエリで空...
-
SQLで○○の値以外を持っているレ...
-
Sql文のUpdateと副問い合わせで...
-
select into句のトランザクショ...
-
リレーションシップ 全データを...
-
条件が混在しているSQLで値取得
おすすめ情報