php - 选择与查询返回的结果相反的结果

标签 php mysql sql

我正在尝试简化我的代码。

我目前有两个查询:一个选择信息列表并使用选择框输出它以添加到用户订阅,然后第二个查询选择用户已经订阅的项目,但我试图将代码简化为一个询问。

我目前可以获得代码来显示用户已通过复选框订阅的选项,但不能显示相反的选项,有没有办法在 WHERE 子句中选择与结果相反的选项?

$selectionQuery = 'SELECT t1.subId, t1.subTitle FROM tbl_subs t1 LEFT JOIN tbl_list t2 ON t2.subId = t1.subId WHERE t2.userId = '.$id.' AND t1.subId = t2.subId'; 

最佳答案

此代码可能不是 ansiSQL,但它在 MYSQL 上运行完美。

$selectionQuery = '从 tbl_subs 中选择 t1.subId、t1.subTitle 作为 t1,其中不存在(从 tbl_list 中选择 1 作为 t2,其中 t2.userId = '.$id.' AND t1.subId = t2.subId)' ;

关于php - 选择与查询返回的结果相反的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22008093/

相关文章:

mysql - 在 mysql 中哪个 inner join sql 是最有效和最好的?

php - Doctrine 迁移回退

java - Android Web 服务连接被拒绝

php - 在 MySQL PDO 查询的 bindParam 中使用 LIKE

mysql - sqoop导入部分表的where子句中传递第二个条件时出错

java - 单个表的两个版本的 JPA 实体

javascript - 在 PHP 的 while 循环中更新多个日期列

java - MYSql 存储过程,日期时间值不起作用

mysql - 在 node.js (express) 中获取 MySQL 数据并使用 EJS 打印

sql - 在 SQL Server Management Studio 中丢失 IntelliSense