mysql查询,从3个表中选择

标签 mysql sql join unique

我正在处理从 3 个表中提取唯一值的查询。这在 2 个单独的查询中完成更好吗?

查询是:

count as returned (
all leadID from lds where status = "ok"
AND leadID is also in rlds with recID="999"
AND rdate > (03-20-2012)
 + 
(all distinct leadID from plds where recID="999"
AND change != NULL
AND pdate > (03-20-2012)) 

工作查询的结果应该是“2”:leadID 1 和 leadID 4

表 lds:

领导ID |状态
1 |好的
2 |不好
3 |好的

表格:
线索编号 |记录 ID |改变 |更新
4 | 999 | CH1 | 03-27-2012
4 | 999 | CH2 | 03-27-2012
5 | 888|空 | 2012 年 3 月 27 日

表rlds:
线索编号 | recID2 |日期
1 | 999 | 03-27-2012
6 | 999 | 2012 年 3 月 27 日

谢谢!

最佳答案

SELECT Ids.leadId
FROM
    Ids JOIN
    rlds ON rlds.leadId = Ids.LeadId AND recID = 999 AND rdate > '03-20-2012'
WHERE Ids.Status = 'ok'

UNION

SELECT leadId
FROM pIds
WHERE recID = 999 AND change IS NOT NULL AND pdate > '03-20-2012'

关于mysql查询,从3个表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9934846/

相关文章:

java - 如何在 JSP 中显示来自 MySQL (BLOB) 的图像?

sql - 无效标识符错误,Oracle

SQL - 不同类别的列

javascript - 使用 Node.js 连接到 MySQL 数据库

PHP - 如何在循环中输出 MySQL 平均商店评级

mysql - 从 C#.net 连接到主机上的 MySql 数据库

SQL 加入多个匹配条件

python - Python-如何拆分和加入音频?

sql - SELECTING 数据与 CASE 语句问题

mysql - SQL根据另一个相关表中列的相应最小值/最大值(值)获取值