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

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

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

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Q&A

1回答

932閲覧

テーブル比較時に片方がEmptysetの場合、除外する

aaa00000

総合スコア9

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

0グッド

1クリップ

投稿2018/10/12 08:48

編集2018/10/12 08:49

mysqlにてテーブルを比較。その際に片方がEmptysetの場合除外するという処理は可能なのでしょうか?

select * from テーブル1 as a

where not exists(

select * from テーブル2 where

(a.column1 = column1 or a.column1 is null and column1 is null) and

(a.column2 = column2 or a.column2 is null and column2 is null));

※テーブル構造は全く一緒です。

初心者で申し訳ないのですがご教授のほどよろしくお願い申し上げます。

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

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

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

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

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

sazi

2018/10/12 09:20

Emptysetって何ですか?カラム名?状態?
aaa00000

2018/10/15 07:13

返信遅れまして申し訳ありません。
aaa00000

2018/10/15 07:14

状態のことになります。テーブル内に何のデータもない状態です。
guest

回答1

0

その際に片方がEmptysetの場合除外

言い換えると両方に存在するということなので、等結合すれば良い事になります。

SQL

1select a.* 2from テーブル1 as a inner join テーブル2 as b 3 on a.column1=b.column1 and a.column2=b.column2

または

SQL

1select * 2from テーブル1 as a 3where exists( 4 select 1 from テーブル2 5 where column1=a.column1 and column2=a.column2 6 )

投稿2018/10/15 07:24

sazi

総合スコア25173

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問