テーブル作成クエリの抽出条件について
テーブルAとテーブルBを使って、テーブル作成クエリを作ろうとしています(テーブルC)
その際、ある1つの項目に文字数指定する抽出条件を設定したいのです
ひっぱってきたその項目のデータは、全て50文字以上あるのですが
それを最大36文字に設定して、それ以降の文字は「切り捨て」にした形で
テーブルCを作成したいのです。
この場合の抽出条件はどのように入力すればよいのでしょうか??
どなたか親切な方、教えて下さい。
また、質問内容に不備がありましたらご指摘をお願いします。
No.2ベストアンサー
- 回答日時:
> この場合の抽出条件はどのように入力すればよいのでしょうか??
作成するテーブルの『フィールドサイズ』を36文字に設定したい、
ということだと、クエリのデザインビューが使えない分、難易度が
上がりますが、テーブルに実際に保存されるデータとしての
最大文字数が36文字になっていればいい、ということでしたら、
それほど面倒ではありません。
まず、50文字以上あるフィールドをそのまま転記する形のテーブル
作成クエリを作成してください。
そうしたら、そのフィールドを、以下のように変更すればOKです
(対象がテーブルAの『コメント』フィールドの場合):
<修正前>
『フィールド:』欄: コメント
『テーブル:』 欄: テーブルA
<修正後>
『フィールド:』欄: コメント: Left([テーブルA].[コメント], 36)
『テーブル:』 欄: (空白にします)
・・・以上です。
【余談】
もしも「フィールドサイズとして設定したい」という場合は、SQL文
(Create Tableステートメント)を記述することになります:
http://office.microsoft.com/ja-jp/access/HP01032 …
これだと恐らく一気にハードルが高くなると思います(汗)
どうしても「フィールドサイズを設定しつつ、クエリで対応したい」
という場合は、以下のような方法もあります:
1)上述のテーブル作成クエリ(Left関数を使用)で、テーブルを作成
(クエリも一旦保存しておく)
2)作成したテーブルをデザインビューで開いてフィールドサイズ
などを設定
3)テーブル作成クエリをデザインビューで開いたら、これを追加
クエリに変更して保存
(テーブル作成クエリを指定したのと同じメニュー/ツールバーに
追加クエリを指定する項目があります)
※追加先は、そのままテーブルCを指定しておきます
4)新規クエリをデザインビューで開く
(『テーブルの追加』ダイアログではテーブルCを追加)
5)削除クエリを指定して、保存
(フィールドは何も指定しなくてもOKですが、気になるようなら
テーブルのフィールド一覧の一番上にある「*」を指定します)
・・・以上です。
これで、テーブル作成クエリを実行する代わりに、1)削除クエリ、
2)追加クエリ、の順で実行すれば、実質的に同じ結果が得られます。
テーブルの構造自体は変化しないまま保持されるため、主キーなど
を設定すればそれらも維持される分、テーブル作成クエリよりも
便利だと思いますので、合わせて参考まで。
No.1
- 回答日時:
LEFT(対象文字列、抜き取りたい文字数)という関数があります。
テーブル作成クエリのある項目で、
フィールドC:LEFT(フィールドA、フィールドB)
フィールドAからフィールドBで指定した文字数分左側から抜き取ってフィールドCとする。フィールドBには数値(=36)。
抽出条件では
「LIKE ”XX”+* ~ 」を使えばあいまい検索条件となります。
先頭が”XX”と一致するもののみ抽出とかできます。
それともここで「=フィールドC」とするか、でしょうか・・・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Oracle SQL update方法 2 2022/06/22 14:07
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Oracle sqlで質問です。 Aテーブルの情報をBテーブルに更新かけたいです。 やりたいことは、Bテーブルの受 1 2023/05/17 11:17
- PHP 【PHP/MySQL】コード上で生成したクエリを基に集計クエリを作りたい 1 2022/07/28 15:06
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストボックスにクエリ結果...
-
更新クエリをリンクデータベー...
-
Accessのテーブルのフィールド...
-
Accessで、テーブルに入力した...
-
アクセスで追加した項目に全て...
-
ACCESSで2つフィールドの日付...
-
Access2007のテーブルにハイパ...
-
アクセスのクエリ 1文字以上を...
-
Access:値が求めたい値の2倍...
-
ACCESSで今日までの勤務時間の...
-
Access で 特定の文字の個数を...
-
アクセスのクエリに「PHONETIC...
-
Accessを開きなおすとテキスト...
-
AccessのDLookUpの第3引数の値...
-
Accessの電話番号フィールド
-
開所日数の計算
-
ACCESSでの桁数を指定して数値...
-
Access クエリの演算フィールド...
-
Accessで、1つの項目に複数の...
-
テーブルでメモ型になっている...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセスで追加した項目に全て...
-
Accessを開きなおすとテキスト...
-
Accessで、1つの項目に複数の...
-
テキストボックスにクエリ結果...
-
Accessのテーブルのフィールド...
-
テーブルでメモ型になっている...
-
Access:値が求めたい値の2倍...
-
アクセスのクエリ 1文字以上を...
-
Accessで、テーブルに入力した...
-
Accessのクエリでハイパーリン...
-
accessでの文字列の混ざった連...
-
Access で 特定の文字の個数を...
-
アクセス クエリのフィールド...
-
access フォームを開くと「パ...
-
追加クエリで特定フィールドの...
-
途中で改行されたCSVをAccessに...
-
更新クエリをリンクデータベー...
-
Access2010での、レポートの両...
-
ACCESSのテーブル複数行...
-
Access2002の重複クエリで大文...
おすすめ情報