SQL查询搜索不一样的地方

时间:2018-07-22 08:14:53

标签: mysql sql

我有带有ID和Product列的表。 并与我的客户购买的产品ID数组('1','2')取得数据

我想向客户建议我的客户没有购买的产品。

那么我该如何编写查询?我写了以下

SELECT * FROM product_table WHERE ID IS NOT IN(1,2);

2 个答案:

答案 0 :(得分:1)

我认为您需要从查询中删除is

 SELECT * FROM product_table WHERE ID NOT IN(1,2);

答案 1 :(得分:0)

基本上,您提供的select语句应该起作用。但是,当您使用MySql数据库时,我假设可以在数据库中找到客户购买信息。也许在这样的表中:

purchasetbl
usrid   prodid    purchasedate
-----   ------    ------------
23      1         2018-07-20
23      2         2018-07-21
24      1         2018-05-14

然后您可以像下面这样执行select语句:

SELECT * FROM product_table WHERE NOT EXISTS
 (SELECT 1 FROM purchasetbl WHERE prodid=id AND usrid=23)

(以上示例假设您正在为客户23服务。)