C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

SQL 複数のテーブルをLEFTJOINしたいです

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■85318 / inTopicNo.1)  SQL 複数のテーブルをLEFTJOINしたいです
  
□投稿者/ いまだ (1回)-(2017/10/06(Fri) 17:54:45)

分類:[データベース全般] 

2017/10/15(Sun) 06:31:35 編集(投稿者)
2017/10/15(Sun) 06:31:01 編集(投稿者)

SQL 3つのテーブルをLEFTJOINしたい




引用返信 編集キー/
■85319 / inTopicNo.2)  Re[1]: SQL 複数のテーブルをLEFTJOINしたいです
□投稿者/ 魔界の仮面弁士 (1423回)-(2017/10/06(Fri) 18:06:35)
No85318 (いまだ さん) に返信
> SQL 3つのテーブルをLEFTJOINしたい

FROM A LEFT JOIN B ON A.COL1 = B.COL2 LEFT JOIN C ON A.COL3 = C.COL4

あるいは

FROM A LEFT JOIN B ON A.COL1 = B.COL2 LEFT JOIN C ON B.COL3 = C.COL4

のようにします。
あるいは一度 WITH で受けてから JOIN しなおすという手も。


> FROM テーブルA LEFT JOIN テーブルB
> ON A.ICUC = B.SC

FROM が「テーブルA」で、ON が「A」なのは間違いですよね?
引用返信 編集キー/
■85320 / inTopicNo.3)  Re[1]: SQL 複数のテーブルをLEFTJOINしたいです
□投稿者/ しま (1回)-(2017/10/06(Fri) 18:21:02)
No85318 (いまだ さん) に返信
> SQL 3つのテーブルをLEFTJOINしたい
>
> 下記コードを利用しています
>
> SELECT
>
> 〜
>
> FROM テーブルA LEFT JOIN テーブルB
> ON A.ICUC = B.SC
>
> テーブルAにテーブルBをLEFTJOINして、
> テーブルAのICUC とテーブルBのSC を紐付けています
>
> 紐付け後、テーブルCをLEFTJOINして、テーブルAのICUC と
> テーブルCのCPUを紐付けたいです
>
> どのようにコードを書いたら良いでしょうか?
>

select *
from TABLE_A A left join TABLE_B B on A.ICUC=B.SC
left join TABLE_C C on A.ICUC=C.CPU

と書くのが普通だと思いますが
データーベースによってはこのままでは受け付けてくれない場合が無いとはいえません
例えば、 accessXXXX の場合は、() で括らないと上手く解釈してくれないことがあります

データーベースの場合は、必ず製品名やバージョンなどを示しましょう
後、このクエリー(この場合 select 文)を実行させる環境は何でしょうか?

Visual Studio の VB や C# の場合でしたら使用する言語や VS のバージョンやエディション
なども示してください

また、 select 文などはコードとは呼ばないのが普通だと思います(少なくとも私はコードとは呼ばない)
引用返信 編集キー/
■85335 / inTopicNo.4)  Re[2]: SQL 複数のテーブルをLEFTJOINしたいです
□投稿者/ いまだ (2回)-(2017/10/10(Tue) 17:59:12)
魔界の仮面弁士様

コードに誤りがございました

失礼しました

しま様

ご指摘ありがとうございました

本当に助かりました

また、宜しくお願いします
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ