gpt4 book ai didi

MySQL Query 需要带回行,而不是空结果

转载 作者:行者123 更新时间:2023-11-29 00:49:19 25 4
gpt4 key购买 nike

好吧,由于我的愚蠢,我投票决定删除我之前的问题......

我有以下代码:

SELECT qnum, id, name, total_staff AS StaffCount, COUNT( q61g ) AS TotalResp, 
(COUNT( q61g ) / total_staff * 100) AS Perc
FROM tdemog_pfp
LEFT JOIN tresults_pfp ON tdemog_pfp.id = tresults_pfp.q61g
WHERE qnum = 'q61g' AND q60p = '1'
GROUP BY name
ORDER BY name

现在,此查询的第一部分从 tdemog 表中取回行,例如它将取回 5 行数据,每行都有一个 id 来自 1到 5。然后我需要查询做的是从 tresultsWHERE q60p = 1 中为第一部分中带回的 5 行中的每一行带回数据 -就像一个普通的“LEFT JOIN”。

有道理吗?

H.

最佳答案

尝试将您的 WHERE 子句的一部分移动到您的 JOIN 条件中:

SELECT ...
FROM tdemog_pfp
LEFT JOIN tresults_pfp ON tdemog_pfp.id = tresults_pfp.q61g AND q60p = '1'
WHERE qnum = 'q61g'
GROUP BY name
ORDER BY name

如果您的 WHERE 子句中有第二个表的字段,它将限制整个记录...但是如果您将其放入 JOIN 条件中,即使第二个表中的记录不符合附加条件,仍应返回第一个表中的记录...

我不确定哪个列属于哪个表...但是将第二个表中的任何列移动到您的 JOIN 中。

关于MySQL Query 需要带回行,而不是空结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9196671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com