• ベストアンサー

accessのクエリーで、レコードを分割したい。

yumi-accessの回答

  • ベストアンサー
回答No.6

>分割したレコードaa bb cc >を元のテーブルのレコードA Bと入れ替えたいという希望です。 下記の手順で如何でしょうか? ①SQLビューに下記を貼り付けて保存 例)クエリー名を「ユニオンクエリ」にします -------------------------------------------- select [担当者], 'aa' AS [品名], [数量]* 0.1 as 計算 from t_テーブルA union all select [担当者], 'bb' AS [品名], [数量]* 0.6 as 計算 from t_テーブルA union all select [担当者], 'cc' AS [品名], [数量]* 0.3 as 計算 from t_テーブルA -------------------------------------------- ※t_テーブルAを実際のテーブル名に変更 ②テーブルAをコピーして貼り付けして複製します。 例)t_テーブルA2 ③t_テーブルA2のデータを削除します ④追加クエリーを作成します。 クエリをSQLビューで開きます 下記のコードを貼りつけて保存 -------------------------------------------- INSERT INTO t_テーブルA2 ( 担当者, 品名, 数量 ) SELECT [ユニオンクエリ].担当者, [ユニオンクエリ].品名, [ユニオンクエリ].計算 FROM ユニオンクエリ; -------------------------------------------- ⑤表示しているクエリを全て閉じる ⑥追加クエリをWクリックして実行する ⑦②で追加したテーブルにコピーされる

siyan
質問者

お礼

おかげさまで出来ました。 何度も大変ありがとうございました。

Powered by GRATICA

関連するQ&A

  • アクセスのクエリーについて

     アクセス初心者です。  例えばテーブル1に以下のようなデータがあります。  A     鈴木  佐藤  もう1つテーブル2があります  B  1  2 そこでクエリーを作成し テーブル1とテーブル2の列を1つにまとめます。この時テーブル1とテーブル2に関連性はなく、リレーションシップはつけません。そうすると A  B  鈴木 1 鈴木 2 佐藤 1 佐藤 2 となります。 イメージ的に A  B 鈴木 1 佐藤 2 というように単純に列をつけたいのです。エクセルなら簡単に出来ますがアクセスでは出来ないでしょうか。

  • アクセスで重複するレコードを追加しない方法

    条件 Office97のアクセスを利用しています。 (会社のPCなので古いものしかありません) すでに作成されたデータベースがあります。 この中に、複数のテーブル・クエリ・他(フォームやマクロなど)があります。 分かる範囲でこのデータベースを触る許可はいただいています。 ただし、テーブルや保存の方法、データ型などの基本しかわからない初心者です。 状況 今回は、あるテーブルにデータを大量に追加したいと思っています。 その際、重複する(複数条件)データは追加しないようにしたいのです。 例えば、 【テーブルA】 オートナンバー   コード   場所   納場        001   AA001   東京    A           002   AA001   東京    B           003   AA001   東京    C           004   BB001   大阪    A           005   BB001   大阪    B    【テーブルB】             コード   場所   納場                AA001   東京    B                AA001   東京    C           → AA001   東京    D                  BB001   大阪    B 上記のテーブルが2つあり、テーブルAを元に、テーブルBのデータを追加する場合、 【テーブルA】 オートナンバー   コード   場所   納場        001   AA001   東京    A           002   AA001   東京    B           003   AA001   東京    C             AA001   東京    D           004   BB001   大阪    A           005   BB001   大阪    B というように表を更新したいと思っています。 上記の表のように「コード」が一致しても「納場」が一致しなければ追加を行いたいのです。 方法をご教授ください。

  • アクセス2007 クエリの作り方

    アクセス2007 クエリの作り方 テーブルA 氏名  生れ年 ---------------- 佐藤   1990 鈴木   1950 斎藤   2000 伊藤   1970 テーブルB ------------------ 年齢   項目 10    少年 20    成人 60    還暦 とあった時 テーブルAを元に「クエリ1」で「年齢」を追加し 年齢: Year(Date())-[生れ年]としました クエリ1 氏名  生れ年 年齢 -------------------- 佐藤   1990  20  鈴木   1950  60 斎藤   2000  10 伊藤   1970  40 更に、「テーブルB」の年齢と「クエリ1」の年齢をリレーション(多対1?)して「クエリ2」としました。 クエリ2 氏名  生れ年 年齢 項目 --------------------------- 佐藤   1990  20 成人 鈴木   1950  60 還暦 斎藤   2000  10 少年 伊藤   1970  40「空欄」 アクセスはまだ良く理解していないのですが、これだとレコードの更新ができません。 フォームでレコードセットを「ダイナセット (矛盾を許す)」にすると更新はできますが不安です。 こんな時「ダイナセット (矛盾を許さない)」で行い場合どんなリレーションにしたら良いのでしょうか?    

  • Access テーブル作成クエリについて

    お世話になります。 以下のようなテーブルがあります。 区分 コード AA  I001 AA  I002 AA  I003 BB  I004 BB  I005  ・   ・  ・   ・ FF  I012 例えば、フォーム上で数量「3」と入力され、「出力」ボタンが押されたときに、 上記のテーブルのレコードが3セットあるテーブルを作成したいと考えて おります。 区分 コード AA  I001 AA  I002  ・   ・  ・   ・ FF  I012 AA  I001 AA  I002  ・   ・  ・   ・ FF  I012 AA  I001 AA  I002  ・   ・  ・   ・ FF  I012 となるイメージです。 まっさらのテーブルを作成し、ループで回しつつレコードを追加していけば よいかと思うのですが、1回のテーブル作成クエリの実行で作成することは 可能でしょうか。 ※上記テーブルが出来たら、そのテーブルをソースとしたレポートでラベルを   印刷させます。 ご教授の程、宜しくお願い致します。

  • Accessで縦と横を入れ替えたい

    りんご みかん ぶどう バナナ いちご 佐藤 2   1    1   1  1 鈴木 1      1   1 田中 1   2       1 上記のようなテーブルがあるのですが、これを下記のようにしたいです。 担当者 種別 田中 りんご 鈴木 りんご 佐藤 りんご 田中 みかん 佐藤 みかん 佐藤 ぶどう 鈴木 バナナ 佐藤 バナナ 田中 いちご 鈴木 いちご 佐藤 いちご 佐藤 りんご 田中 みかん 種別の隣に数量がきてもOKです。 ご教授お願い致します。

  • シート1とシート2のデータ一致 抽出方法

    エクセルのデータ抽出でお知恵をお貸し下さい。 シート1 A列  B列     C列 品名  製品番号  数量 AA    1AAAA    200 BB    1BBBB    250 CC    1CCCC    300 シート2 A列   B列     C列 品名  製品番号   数量 AA    1AAAA   200 BB    1BBBB   250 AB    AAAA    500 CC    1CCCC   300 上記のようなシートがあります。 内容は同じなのですが、シート2にはシート1にはない品名、製品番号、数量が含まれます。 シート1の品名、製品番号、数量がすべて一致するものをシート3へ抽出し、 一致しなかったデータ(シート1にはなく、シート2にあるものを含め)をシート4へ抽出したいのですが 何か良い方法はないでしょうか??

  • ACCESSのクエリーで

    ACCESSのクエリで たとえば下記のテーブルがあったとき コード 品名 1   商品001 3   商品003 4   商品A 7   商品BB と有ったときACCESSのクエリで 1   商品001 2 3   商品003 4   商品A 5 6 7   商品BB のようにテーブルに無いコードのところは空番にしないで 番号をだけを付けるのは可能でしょうか? もとのテーブルはいじりたくないので・・・ もし、やり方が有るならば教えてください

  • 最後のデータを含むレコード1行 MYSQL

    お世話になります。 最後の日にちを含むレコード全ての抽出方法がどうしてもわかりません。 id name date amount 1 AA 3/1 5 2 BB 3/1 5 3 CC 3/1 5 4 AA 3/2 7 5 BB 3/2 4 6 AA 3/3 1 これを、select * from テーブル group by name とすると、 id name date amount 1 AA 3/1 5 2 BB 3/1 5 3 CC 3/1 5 select id, name, max(date),amount from テーブル group by name とすると、 id name date amount 1 AA 3/3 5 2 BB 3/2 5 3 CC 3/1 5 望んでいる結果はこうです。最後のdateを含むレコード全てです。 id name date amount 3 CC 3/1 5 5 BB 3/2 4 6 AA 3/3 1 select * from テーブル as a where a.date=(select max(b.date) From テーブル as b where a.id=b.id); このようにしましたが、データの数が膨大なのですごく時間がかかってしまいます。 他、シンプルな方法はないでしょうか。 よろしくお願いします。 MYSQL バージョン5.0.45

  • アクセス クエリ・集計・計算方法について

    アクセスの集計機能を使用して、品名毎の数量の合計と金額の合計を算出しようとしていますが、 思うようにできません。どなたか教えてください。 クエリのフィールドを左から・・・ (1)年月: Format([日付],"yyyy/mm")(集計:グループ化) (2)品名(集計:グループ化) (3)品名のカウント(集計機能:カウント) (4)単価(集計:グループ化) (5)金額: [単価]*[品名のカウント](集計:グループ化) このような形でクエリを実行していますが、すべての注文が1つだけなら問題ないのですが、実際には品名には数量が掛けられている場合もあり、現在設定しているクエリ設定では正しい数量の合計と金額の合計を出すことができません。どうか集計方法をご教授いただけないでしょうか。よろしくお願いします。 ■現在のテーブルの設計とリレーションを明記します。 【A】顧客テーブル (1)顧客ID (2)発注コード (3)氏名 【B】商品テーブル (1)商品ID (2)品名 (3)単価 【C】注文テーブル (1)注文ID (2)日付 (3)顧客ID 【D】注文明細テーブル (1)注文明細ID (2)注文ID (3)商品ID (4)数量 リレーション 【A】(1)-【C】(3) 【B】(1)-【D】(3) 【C】(1)-【D】(2)

  • アクセスでデータを集計するには

    例として、下記のデータテーブルを受け取りました。 テーブル1 ID 名前 項目 値 01 AA 住所 ○○ 01 AA 電話 ○× 01 AA 月給 ○△円(テキスト) 01 AA 手当 ○□円(テキスト) 02 BB 住所 □□ 02 BB 電話 □× 02 BB 月給 □△円(テキスト) 02 BB 手当 □○円(テキスト) 03 CC 住所 ×☆ 03 CC 電話 ×○ 03 CC 月給 ×△円(テキスト) 03 CC 手当 ×□円(テキスト)  以下続く 上記表を、下記表 テーブル2 ID 名前 住所 電話 月給    手当 01 AA ○○ ○× ○△(数値) ○□(数値) 02 BB □□ □× □△(数値) □○(数値) 03 CC ×☆ ×○ ×△(数値) ×□(数値)  以下続く のように編集された表を新たに作成したいのですが、どのようにしたらよろしいのでしょうか(質問1)。  また、テーブル2から、月給+手当が□△以上の人のIDと名前を抽出できるようにするには、どのような操作が必要なのでしょうか(質問2)。  データはテーブル1の形式で定期的に送られて来た上、データは全てテキスト形式故、テーブル2の形式に再編集したテーブルがあった方がいいと思いました。  アクセスは今まで使ったことがありません。  恐らくご回答の解説が長くなってしまうでしょうから、作り方の概要と流れだけでも構いません。もちろん詳細にご回答賜れば誠に幸いです。  以上、よろしくご回答のほど、お願い申し上げます。