根据其他表上的数据状态从一个表中选择数据

时间:2015-08-17 09:23:00

标签: mysql

我的第一个数据表是couponsnmaster

+-----------+----------+------------+
|couponsnid | couponid |  couponsn  |
+-----------+----------+------------+
|    1      |     1    |    1000    |
|    2      |     1    |    1001    |
|    3      |     1    |    1002    |
|    4      |     1    |    1003    |
|    5      |     1    |    1004    |
|    6      |     1    |    1005    |
+-----------+----------+------------+

我的第二个数据表是分发

+-----------+--------------+--------------+--------------+
|   distid  |  couponid    |  couponsnid  |    status    |
+-----------+--------------+--------------+--------------+
|    1      |      1       |       1      | distribute   |
|    2      |      1       |       2      | distribute   |
|    3      |      1       |       3      | distribute   |
|    4      |      1       |       1      |  returned    |
+-----------+--------------+--------------+--------------+

我想要所有的" couponsn"来自" couponsnmaster"关于" couponid"除了状态是"分发"或"已销售"或者"奖金"在表格中#34;分发" ....

1 个答案:

答案 0 :(得分:1)

尝试此查询:

SELECT c.couponsn FROM
couponsmaster c INNER JOIN distribute d
ON c.couponsid = d.couponsid
WHERE d.status NOT IN('distribute','sold','bonus')