質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

2回答

8118閲覧

外部結合を複数のテーブルから行いたい vb.net sqlite

ryzeal

総合スコア15

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2018/01/22 05:46

###前提・実現したいこと
外部結合を複数のテーブルから行いたいです。
受注テーブル
...┗商品テーブル
.......┣カラーテーブル
.......┗サイズテーブル
受注テーブルから商品IDで外部結合し、また商品テーブルからカラーID・サイズIDで外部結合したいです。

受注テーブル(tbl_order)
order_code product_code order_qua order_date
商品テーブル(tbl_product)
product_code color_code size_code product_price
カラーテーブル(tbl_color)
color_code color_name
サイズテーブル(tbl_size)
size_cide size_name

以上がテーブル名と要素一覧です。

###発生している問題・エラーメッセージ
Using con As New SQLiteConnection("Data Source=al.db")
Dim sqlstr As String
sqlstr = "SELECT XXXXXXXXXXXXXXXXXXXXXXX"
~~~~~~~以下に接続コード~~~~~~~~~
End using

"SELECT XXXXXXXXXXXXXXXXXXXXXXX"
この部分が全くわからないです。

###該当のソースコード

"SELECT XXXXXXXXXXXXXXXXXXXXXXX"
この部分が全くわからないです。
SELECT以降のSQL文を教えて頂きたいです。

また 複数の外部結合 + WHERE も教えていただければ幸いです。

###試したこと
ANDで繋げてみましたが構文エラーが出ました。

###補足情報(言語/FW/ツール等のバージョンなど)
VistualStudio2017

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

それほど難しく考えなくても大丈夫です。
join句はjoin <テーブル名> on <連結式>
となっていますのでその通りに書くだけです。何個書いても構いません。

sql

1select A.*,C.color_name 2from tbl_order as A 3 inner join tbl_product as B on B.product_code=A.product_code 4 inner join tbl_color as C on C.color_code=B.color_code

投稿2018/01/22 06:00

sousuke

総合スコア3828

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ryzeal

2018/01/22 06:16

回答ありがとうございます。 その構文にWhereをつけるとなるとどうなりますか? 例えば...product_codeが1000未満のものという縛りをしたいです。
sousuke

2018/01/22 06:34

from xxxxx inner join xxxxx where xxxx です。
ryzeal

2018/01/22 07:04

ありがとうございます。 実践後またなにかあれば質問なければベストアンサーにさせて頂きます。 宜しくお願い致します。
ryzeal

2018/01/23 04:28

出来ました! ありがとうございました! 本当に感謝感激です。
guest

0

テーブルの説明にはCREATE TABLE文を載せましょう。SQLはきちんと勉強してください。SQLite入門

product_codeが1000未満

sousukeさんのSQLに以下の1行を追加します。
WHERE B.product_code < 1000

投稿2018/01/22 08:34

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問