gpt4 book ai didi

mysql - 选择具有多条记录的正确MySQL记录

转载 作者:行者123 更新时间:2023-11-29 13:04:30 25 4
gpt4 key购买 nike

我很难找到正确的 MySQL 语句。

记录就像

id    leadid    fieldnumber    value
1 1 100 AAA
2 1 101 yes
3 1 102 email1
4 2 100 AAA
5 2 101 no
6 2 102 email2
7 3 100 BBB
8 3 101 yes
9 3 102 email3
10 4 100 AAA
11 4 101 yes
12 4 102 email4

现在我想从每个唯一的leadid收集fieldnumber = 102的记录中的值列,其中具有相同leadid的相应记录满足:

(fieldnumber = 100 AND value = "AAA") AND 
(fieldnumber = 101 AND value = "yes")

在此示例中,结果为:email1、email4

我已经通过第一个选择语句 (fieldnumber = 100 AND value = "AAA") 得到了结果,但是当我添加第二个选择语句时 (fieldnumber = 101 AND value = "yes"),结果始终为零记录。

我认为这是一件愚蠢的事情,但我无法弄清楚或找到正确的说法来这样做。

最佳答案

这里的关键点是要认识到您正在同时处理同一个表中的三个记录。您必须将表与自身连接两次 - 这些称为自连接

你需要这样的东西:

SELECT a3.value
FROM Anonymous_Table AS a1
JOIN Anonymous_Table AS a2 ON a1.leadid = a2.leadid
JOIN Anonymous_Table AS a3 ON a1.leadid = a3.leadid
WHERE (a1.fieldnumber = 100 AND a1.value = "AAA")
AND (a2.fieldnumber = 101 AND a2.value = "yes")
AND (a3.fieldnumber = 102)

关于mysql - 选择具有多条记录的正确MySQL记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22915609/

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