2016-10-03 9 views
0

を取得し、私は前の2ヶ月からどのません充電テーブル内のすべての加入者のリストを取得しようとしています。は、2つのテーブルのデータを比較し、私は2人のテーブルの加入者を持ち、</p> <p>を充電リスト珍しくデータ

働いていない私はこれを得ることができる方法がわからない、SQLの新しい、私はSQLの下にしようとしているのです

select * subscribers UNION select *from charge; 

表構造: 加入:

id || mobile|| subscribers_date 

担当:

id || mobile || status || charge_date 

私の日付フィールド名はsubscribers_dateです。

+0

上の被覆指数は、それは小規模なデータベースのために働いていますサンプル入力と期待出力 – 1000111

答えて

1

NOT IN演算子を使用します。

Select * from subscribers where 
    mobile not in (select mobile from charge where charge_date > '2 months ago') 

そして、あなたのcharge表はcharge_date, mobile

+0

と一緒にテーブル構造を共有する必要があり、それがぶら下がっているので、私のテーブルサイズは、巨大です。 –

+0

subscribers_date、subscribers_idにインデックスがありますか? – Cine

+0

私は試しました select * from subscribers wheresubscribers.idにはありません。ここで、d_date> = date_format(curdate()、 '%Y-%m-01') - 間隔2か月) –

関連する問題