- 締切済み
SQLを教えてください!!
テーブルAとテーブルBがあり、両方に存在しないものを抽出してエラーとする処理を行いたいのですが、 どういうSQlを書いたらいいのか教えてください。 下記例としてテーブルにデータがあったとしたら、結果として 004 商品D 005 商品E 006 商品G というデータを抽出したいのですが・・ テーブルA テーブルB ------------- ----------------------- コード 商品名 NO コード 商品名 001 商品A 1 001 商品A 002 商品B 2 001 商品A 003 商品C 3 002 商品B 004 商品D 4 003 商品C 006 商品G 5 003 商品C 6 005 商品E
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- ACCSESSのSQLで教えてください。
すみません! SQL初心者なのですが教えてください。 下記のようなtableというテーブルなのですが こちらのテーブルをデータが増加しても(1)から(2)のように select表示させるにはどうすればよいか教えて頂けないでしょうか・・・。 何卒よろしくお願い致します。 テーブル名:table カラム名:NO,kigou (1) table |NO|kigou| |1 |a | |2 |b | |3 |c | |4 |d | |5 |e | ↓ (2) |NO1|kigou1|NO2|kigou2|NO3|kigou3| |1 |a |2 |b |3 |c | |4 |d |5 |e | ・・・
- ベストアンサー
- その他(データベース)
- ACCESS SQLステートメントについて初心者です。
お知恵を貸してください。 ACCESSでSQLステートメントで 『Aテーブル』 ID 商品コード1 商品コード2 1 1111 2222 2 2222 3333 3 4444 5555 『Bテーブル(商品コードマスター)』 商品コード 商品名 1111 ああああ 2222 いいいい 3333 うううう 4444 ええええ 5555 おおおお AテーブルとBテーブルを結合して ID 商品コード1 商品名 商品コード2 商品名 1 1111 ああああ 2222 いいいい 2 2222 いいいい 3333 うううう 3 4444 ええええ 5555 おおおお というCテーブルを作りたいです。 商品コード1と商品コード2の両方共 Bテーブルの商品コードから商品名を取得したいのですが、できないのですが・・・・ 出来ればBテーブル(商品コード)を2つ作くったり等したくないのですが、SQLステートメントでどう記述すれば良いですか?
- ベストアンサー
- その他(データベース)
- こんなSQLを教えてください
こんなSQLを教えてください <更新前> テーブル1 |キー|コード| | 1| a| | 2| b| | 3| c| テーブル2 |キー|コード| | 2| B| | 4| D| <更新後> テーブル1 |キー|コード| | 1| a| | 2| B| | 3| c| こんなふうに テーブル1と同じデータがテーブル2にあったら テーブル1を書き換えるUPDATE文を教えてください
- ベストアンサー
- Oracle
- SQLがわかりません。
以下のTESTテーブルから以下の結果を表示するようなSQLを教えて頂けないでしょうか。 TESTテーブルでTYPE(1,2,3)を抽出して、2,1,3の順番にして それぞれのTYPEごとにDBIDでソートをしたいです。 どうかよろしくお願いいたします。 table TEST DBID | NAME | TYPE ------------------------------- 1 | A | 1 2 | B | 2 3 | C | 3 4 | D | 4 5 | E | 1 6 | F | 2 7 | G | 3 8 | H | 4 9 | I | 1 10 | J | 2 結果 DBID | NAME | TYPE ------------------------------- 2 | B | 2 6 | F | 2 10 | H | 2 1 | A | 1 5 | D | 1 9 | G | 1 3 | D | 3 7 | G | 3
- ベストアンサー
- Oracle
- アクセス2003 SQL2000を使用してます。
いつもお世話になっています。 下記のようにAテーブルBテーブルを元に Cテーブルのようにデータを出力したいのですが、 SQL文がうかびません。 どなたか教えてください!! ●Aテーブル(取込データ) 名前 | コード1(主コード) ------------------------- 小林 | 100 小林 | 102 田中 | 110 町田 | 130 木村 | 160 木村 | 160 木村 | 180 ●Bテーブル(取込データ) コード1 | コード2 --------------------------- 100 | A 110 | C 130 | D 160 | E ●Cテーブル(出力データ/ABテーブル合体させたもの) ★ ※※※を表示させたい! ↓ここまでは表示はできている↓ 名前 | コード1 | コード2 -------------------------------------------- 小林 | 100 | A 小林 | 102 | ※※※ 田中 | 110 | C 町田 | 130 | D 木村 | 160 | E 木村 | 160 | E 木村 | 180 | ※※※ ↓表示したい内容。不明な点。↓ 名前 | コード1 | コード2 -------------------------------------------- 小林 | 100 | A 小林 | 102 | A 田中 | 110 | C 町田 | 130 | D 木村 | 160 | E 木村 | 160 | E 木村 | 180 | E 以上 よろしく御願いします!!
- ベストアンサー
- SQL Server
- SQLの質問です。
SQLの質問です。 Access2003でのデータ操作で、 (1)2つのテーブルから一部列でのデータ重複があるものを除き、全件抽出 (2)テーブルは dテーブル No、販売先、日時、評価、金額 mテーブル 販売先(主キー)、店舗名 この二つのテーブルから全データを出力、ただし同じNoが重複しているデータは評価がA~Dのもの中で(E~F、空もある)日時が最新のもののみ出力をしたいのですが、教えていただけませんでしょうか、お願いします。
- ベストアンサー
- その他(データベース)
- Oracle10gのSQL文についての質問です。
Oracle10gのSQL文についての質問です。 [A]テーブルに CODE(key) NAME と、フィールドがあります。 A NAME-A B NAME-B C NAME-C D NAME-D E NAME-E と、データが入っています。 [B]テーブルに CODE(key) LINE(key) BIKO と、フィールドがあります。 A 1 BIKO-A-1 A 2 A 3 BIKO-A-3 B 1 B 2 B 3 C 1 C 2 BIKO-B-2 C 3 D 1 BIKO-D-1 D 2 BIKO-D-2 D 3 BIKO-D-3 E 1 E 2 E 3 BIKO-E-3 と、データが入っています。 結果が CODE(key) LINE(key) BIKO と、フィールドがあります。 A 1 BIKO-A-1 A 2 BIKO-A-1 A 3 BIKO-A-1 B 1 (null) B 2 (null) B 3 (null) C 1 BIKO-B-2 C 2 BIKO-B-2 C 3 BIKO-B-2 D 1 BIKO-D-1 D 2 BIKO-D-1 D 3 BIKO-D-1 E 1 BIKO-E-3 E 2 BIKO-E-3 E 3 BIKO-E-3 と、したいのです。 つまり、[B]テーブルのLINEが一番小さいBIKOが欲しいのです。 色々と考えてみましたが、解りません。 宜しくお願い致します。
- ベストアンサー
- Oracle
- SQL SELECT(Oracle 11g)
SQLのご質問です(Oracle 11g)。 No 商品 1 A 1 B 1 C 2 A 3 A 3 D 4 E 【下記条件】 Aの商品が含まれている場合対象 また、BとCが混じっていても対象 その他の商品(AとBとC以外)が混じっていると非対象 結果 No 1,2が出力 とのSQLを作成したいのです。 条件が上手く浮かびません。 有識者の方ご享受宜しくお願い致します。
- ベストアンサー
- Oracle
- 複雑なSQLを1本でまとめたい
Oracle10gで開発をしています。 1本のSQLで下記のような結果を返したいのですが、 やり方がわかりません。 どなたかご教授頂けないでしょうか? Aテーブル No 注文番号 品番 在庫数 注文数 - ---- -- --- --- 1 001 a001 10 0 2 002 a001 5 5 3 003 b001 10 10 4 004 c001 5 2 5 005 d001 20 0 SELECT * FROM Aテーブル WHERE 在庫数 - 注文数 > 0 結果 No 注文番号 品番 在庫数 注文数 - ---- -- --- --- 1 001 a001 10 0 4 004 c001 5 2 5 005 d001 20 0 となりますが、 これを 結果 No 注文番号 品番 在庫数 注文数 - ---- -- --- --- 1 001 a001 10 0 2 002 a001 5 5 4 004 c001 5 2 5 005 d001 20 0 という風に、1番目の結果+1番目の結果にある商品の 他レコードも抽出したいのですが、どうしたらよいでしょうか?
- ベストアンサー
- Oracle
- unionの結果は集計はできないですよね。。。。
【明細データ】と【変換テーブル】で、変換後明細データを作成 して、その結果を集計したいのですが、、、 下記の結果を求めるためにはSQLひとつで可能でしょうか? ※(3)の表まではunionで可能でしたが、unionでは集計はできないですよね。。。。 (1)【明細データ】 CODE VALUE AMOUNT A 1000 10000 B 2000 20000 C 3000 30000 D 4000 40000 E 1001 10000 F 2001 20000 G 3000 30000 H 4000 40000 (2)【変換テーブル】 VALUE1 VALUE2 1000 1001 2000 2001 (3)【変換後明細データ】 CODE VALUE AMOUNT A 1001 10000 B 2001 20000 C 3000 30000 D 4000 40000 E 1001 10000 F 2001 20000 G 3000 30000 H 4000 40000 (4)【SQL抽出結果】が欲しい VALUE AMOUNT 1001 20000 2001 40000 3000 60000 4000 80000
- ベストアンサー
- Oracle
- 通勤中に電車内でゲームをしているのですが、爪からカツカツ音が鳴ってしまいました。
- 自分自身気になるほどの音ではなかったので、マナーが悪いかもしれないと思って電車内ではゲームをしないようにしています。
- 電車内でのスマホのカツカツ音は気になる人もいるかもしれませんが、注意されたらゲームは一旦やめます。
お礼
すいません! やってみたのですが、エラーが出て動きません! GROUP BYで式が設定されていませんとなってしまいます。(BYオラクル) 又、キーが例では、1項目だけだったのですが、複数で成り立つ場合も作りたいので合わせて教えてください。