- ベストアンサー
SQL初心者のための所属ごとの結果表示
- SQL初心者のための所属ごとの結果表示について質問です。健康診断テーブルと個人情報テーブルから所属ごとの結果を表示したいです。
- 健康診断テーブルと個人情報テーブルから所属ごとの結果を出力するプログラムの組み方について教えてください。
- SQL初心者ですが、健康診断テーブルと個人情報テーブルから所属ごとの結果を表示する方法を教えていただけますか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- k_o_r_o_c_h_a_n
- ベストアンサー率55% (526/942)
- dda167
- ベストアンサー率76% (55/72)
- wildcat-yp
- ベストアンサー率37% (303/813)
関連するQ&A
- 結合SQLに関して
結合SQLに関して ある3つのテーブルが存在し、TABLE1の情報を核として、TABLE2,TABLE3と 結合させて情報を取得しようと考えています。 TABLE1とTABLE2だけであれば LEFT OUTER JOIN等を駆使すれば、TABLE1を核として 全件表示可能かと思いますが、TABLE3も含めて結果のような形にしたい場合は、 どのようにSQLを記述すれば良いでしょうか。。。。 初歩的な質問で申し訳ありませんが、教えて下さい。 TABLE1 NO 1 2 3 TABLE2 NO,BUSYO_CODE 1,123 2,123 3,456 TABLE3 BUSYO_CODE,BUSYO_NAME 123,総務 456,経理 結果 NO,BUSYO_CODE,BUSYO_NAME 1,123,総務 2,123,総務 3,456,経理 よろしくお願いします。
- ベストアンサー
- Oracle
- SQL文がわかりません。
SQL文がわからなく困っております。 下記のデータ*01を*02のデータのようにSELECTするためには、 どのようなSQL文を書けばよいのかお教えいただけますでしょうか? DBはoracle11gです。 ※01 ID 所属部署 _____________________________ 1 a 1 b 2 a 2 b 2 c 3 a 3 b 3 c 3 d ____________________________ ↓↓↓↓↓↓↓↓↓↓↓↓↓↓ ※02 ID 所属部署 所属部署2 所属部署3 所属部署4 _________________________________________ 1 a b 2 a b c 3 a b c d
- ベストアンサー
- Oracle
- sql server 2008でjoinの使い方
sql server 2008にて、joinの使い方について教えて下さい。 以下二つのテーブルがあります。 所属テーブル 名前 性別 所属 田中 男 経理部 田中 女 総務部 鈴木 女 経理部 佐藤 男 総務部 住所テーブル 名前 性別 住所 田中 男 杉並区 佐藤 男 中野区 鈴木 女 中央区 この二つのテーブルよりデータを取得し、以下のテーブルを作りたいです。 住所と所属テーブル 名前 性別 住所 所属 田中 男 杉並区 経理部 田中 女 null 総務部 鈴木 女 中央区 経理部 佐藤 男 中野区 総務部 但し、left join を使って、 所属テーブル.名前 = 住所テーブル.名前 and 所属テー ブル.性別 = 住所テーブル.性別 の条件を使用すると、女性の田中さんのデータが抽出されません(住所テーブルに登録されていないため、マッチングできていません)。どうすれば以上のテーブルが作られますか?
- 締切済み
- SQL Server
- SQLの構文の質問です。
以下のテーブルがあります。 table ID key code cls add_date -- ---- ----- ---- ---------- 1 0001 A01 0 2013/01/01 2 0001 A01 0 2013/01/15 3 0001 B01 0 2013/02/01 4 0002 C01 0 2013/01/20 5 0003 XYZ01 0 2013/01/10 6 0003 XYZ01 0 2013/01/20 : このテーブルからkey、codeが重複したものを除いて、一意となる日付が最新のを 取り出したいのですがSQLをどのようにすればよいか教えてください。 結果: 2 0001 A01 0 2013/01/15 3 0001 B01 0 2013/02/01 4 0002 C01 0 2013/01/20 6 0003 XYZ01 0 2013/01/20 分析関数、相関関数を使うのでしょうか。 使わなくてもできるのでしょうか。 今後の為に、両方を教えてください。
- 締切済み
- Oracle
- SQLについての質問です
SQLの質問です。(Oracle) 二つのテーブル T1, T2 に、それぞれ三つのカラム A, B, C があり、A, B の値が同じである行においてT1のCからT2のCへ値をコピーするSQLを教えてほしいです。 以下、そのデータ例です。 テーブル T1 A B C --------- 1 AAA 10 2 BBB 20 3 CCC 30 テーブル T2 A B C --------- 1 AAA 0 2 XXX 0 4 YYY 0 この場合、結果としてテーブル T2は1行目だけがカラム Cの値がT1からコピーされ A B C --------- 1 AAA 10 2 XXX 0 4 YYY 0 としたいです。
- 締切済み
- その他(ソフトウェア)
- こんなSQL文はありませんか?
環境:Access97 例えば以下のような社員名テーブルがあったします。 部署名|氏名 --------------- 経理部|田尾 --------------- 経理部|平野 --------------- 経理部|モッカ --------------- 営業 |谷沢 --------------- 総務部|大島 --------------- 総務部|上川 --------------- このテーブルを部署ごとにグループ分けして 以下のような形式で氏名を抽出したいのですが、 このようなことができるSQL文はありますでしょうか。 部署名|氏名1|氏名2|氏名3|・・|氏名n ---------------------------------------- 経理部|田尾 |平野 |モッカ ---------------------------------------- 営業 |谷沢 ---------------------------------------- 総務部|大島 |上川 宜しくお願いいたします。
- ベストアンサー
- その他(データベース)
- SQLについての質問
9iです。お世話になります。 次のSQLをどう書けばよいのか分かりませんのでご教示願います。 【テーブルA】 id code 1 1 2 2 3 (null) … 【マスタテーブルB】 code name 1 あ 2 い 【ほしい結果】 id name 1 あ 2 い 3 (null) … 要するにcodeがnullの所はnameをnullにして、nullでないところは、マスタから引っ張ってくるということがやりたいです。 宜しくお願いします。
- ベストアンサー
- Oracle
- 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ステートメントでどう記述すれば良いですか?
- ベストアンサー
- その他(データベース)
- OracleのSQLについて 助けてください。
OracleのSQLについて 助けてください。 (例) テーブルA 「human」 | ID | 名前 | テーブルB 「kotoba」 | ID | 名前 | テーブルC 「kakutougi」 | ID | 名前 | テーブルD 「kotoba_have」 | human.ID | kotoba.ID | テーブルE 「kakutougi_have」 | human.ID | kakutougi.ID | テーブルAには一人一人のIDと名前が入っています。 テーブルBには言語の種類IDと種類名(英語、日本語など)が入っています テーブルCには格闘技の種類IDと種類名が入っています。 テーブルDとテーブルEはその人がどの言語がしゃべれ、どの格闘技ができるかを示しています。 テーブルD、Eはその人が複数の言語が話せ、複数の格闘技ができる場合複数のhuman.IDが入ります。 ここで日本語と英語が話せ、柔道と空手ができる人を呼び出したい場合はどのようなSQLにすればよいのでしょうか。 プログラムでwhileで回してはできるのですが、データ量が膨大のためSQLでどうにかしたいのですがわかる方いらっしゃいますでしょうか? 助けてください。よろしくお願いします。
- 締切済み
- Oracle
- SQLでの集計について
こんにちわ。以下のようなテーブルから条件に見合う合計を出したいと思いSQLを書いてみたのですが、 思った結果になりません。 テーブルA ID1 得意先Cd 営業所Cd 日付 1 001 001 2005/09/01 2 001 002 2005/09/01 3 001 001 2005/09/03 テーブルB ID2 ID1 部署 数量 金額 1 1 01 1 1000 2 1 01 1 1000 3 1 02 1 1000 4 2 01 1 1000 5 2 01 1 1000 6 3 01 1 1000 7 3 01 1 1000 8 3 02 1 1000 [抽出結果] 得意先Cd 営業所Cd 日付 部署 数量(Sum) 金額(Sum) 001 001 2005/09/01 01 2 2000 001 001 2005/09/01 02 1 1000 001 001 2005/09/03 01 2 2000 001 001 2005/09/03 02 1 1000 001 002 2005/09/01 01 2 2000 [SQL] select 得意先Cd,営業所Cd,日付,部署,SUM(数量) As '数量計',SUM(金額) As '金額計' from テーブルA AA Inner join テーブルB BB ON (AA.ID1 = BB.ID1) group by 得意先Cd,営業所Cd,日付,部署,数量,金額 order by 得意先Cd,営業所Cd,日付,部署 このSQLを実行すると、日付、部署共に同じ場合でも数量・金額が合計値となりません。 得意先Cd 営業所Cd 日付 部署 数量 金額 001 001 2005/09/01 01 1 1000 001 001 2005/09/01 01 1 1000 どのように変更を加えれば、上記の「抽出結果」にできるのでしょうか? よろしくお願いいたします。
- ベストアンサー
- SQL Server
お礼
動きました!!本当にありがとうございます。 内容も間違っていないようなので一安心してました。 かなり複雑に見えます、どういう動きをしているかは後で勉強してみます。