MySql subselect havning where子句与主选择的值

标签 mysql

有一些我正在努力工作的选择

SELECT DISTINCT a.client_key, client_name 
FROM Bloggers AS a 
LEFT JOIN BloggersPosts AS b 
ON a.client_key = b.client_key 
WHERE a.status = 1 AND 
0 NOT IN (SELECT MIN(STATUS) FROM BloggersPosts AS c WHERE c.client_key=a.client_key)

由于某些原因 0 NOT IN (SELECT MIN(STATUS) FROM BloggersPosts AS c WHERE c.client_key=a.client_key) 不工作,有什么办法让它工作吗?

编辑:不工作我的意思是如果我删除 susbelect - 我的查询给出结果行。但是一旦我添加它 - 结果是空的。同时,当我单独执行子选择时 SELECT MIN(STATUS) FROM BloggersPosts - 它返回 1,这意味着将其作为子选择 - 也应该返回结果,但它没有。

谢谢

最佳答案

我希望这能完成您的工作。为您的问题尝试不同的解决方案。

SELECT DISTINCT a.client_key, client_name 
FROM Bloggers AS a 
JOIN (SELECT client_key, MIN(STATUS) minstatus FROM BloggersPosts GROUP BY client_key) b
ON a.client_key = b.client_key AND minstatus <> 0
WHERE a.status = 1

关于MySql subselect havning where子句与主选择的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27858742/

相关文章:

mysql - 如何仅对某些表变量使用不同的?

javascript - 未选择语言时如何收到错误消息?

mysql - 如果不存在则添加列

php - 使用php将图像插入mysql

mysql - 计算多年的数据并按月分组

php - 如何比较同一天的多个日程和出勤情况

mysql - SQL 默认国家、城市、城镇列表

java - java中这个TIMESSTAMP方法正确与否?

mysql - 时间到后如何执行程序?

mysql - 以特定顺序连接表