mysqlにて2つのテーブルがあり、マスターテーブルとチェック用テーブルです。
カラムは同じです。
チェック用テーブルのidにてマスタテーブルを比較して、1つでも違いがあれば抽出したいのですが
どのようなsql文になりますでしょうか?
例)
mst_tbl
id | col1 | col2 | col3 |
---|---|---|---|
1 | a1 | a2 | a3 |
2 | b1 | b2 | b3 |
3 | c1 | c2 | c3 |
5 | f1 | f2 | f3 |
ck_tbl
id | col1 | col2 | col3 |
---|---|---|---|
1 | a1 | a2 | a3 |
2 | b1 | b3 | |
3 | c1 | c2 | c4 |
4 | e1 | e2 | e3 |
結果
tbl | id | col1 | col2 | col3 |
---|---|---|---|---|
mst_tbl | 2 | b1 | b2 | b3 |
ck_tbl | 2 | b1 | b3 | |
mst_tbl | 3 | c1 | c2 | c3 |
ck_tbl | 3 | c1 | c2 | c4 |
mst_tbl | ||||
ck_tbl | 4 | e1 | e2 | e3 |
または
|tbla|ida|col1a|col2a|col3a|tblb|idb|col1b|col2b|col3b|
|:--|:--:|--:|--:|--:|
|mst|2|b1|b2|b3|ck|2|b1||b3|
|mst|3|c1|c2|c3|ck|3|c1|c2|c4|
|mst|||||ck|4|e1|e2|e3|
*id1は全て同じ値の為抽出しない。
*id2はcol2が違う為抽出
*id3はcol3が違う為抽出
*id4はマスタテーブルに無い為抽出
*id5はもともとチェック用テーブルのidに無い為チェックしない。
ご教授よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/27 03:14