gpt4 book ai didi

php - mySQL 查询 - 简单的数学问题

转载 作者:行者123 更新时间:2023-11-29 14:24:14 26 4
gpt4 key购买 nike

我每个人都有 2 个电话号码。有的只填写了电话,有的只填写了电话2,有的则两者都有。

我正在尝试查找具有相同电话号码的其他人,电话 = 电话、电话 = 电话 2、电话 2 = 电话、电话 2 = 电话 2

问题是,如果 Telephone1 为空,那么我现有的代码会将其与下一个具有电话号码的人匹配,无论电话或 Telephone2 是否为空。我需要在代码中添加什么。

    function getothers($tid,$criteria,$telephone,$telephone2,$elector){
global $dbh;
$tid = '-TID'.$tid;
$sql = "SELECT * FROM electors
WHERE (telephone > 0 OR telephone2 > 0)
AND records NOT RLIKE '$tid'
AND (telephone IN ('$telephone','$telephone2')
OR telephone2 IN ('$telephone','$telephone2'))
AND ID != '$elector' LIMIT 10";
return $dbh->query($sql);
}

最佳答案

SELECT T_el.*
FROM (electors AS T_el) LEFT JOIN (electors AS T_dup)
ON (T_el.ID!=T_dup.ID
AND (
(T_el.telephone IS NOT NULL AND (T_el.telephone=T_dup.telephone OR T_el.telephone=T_dup.telephone2))
OR
(T_el.telephone2 IS NOT NULL AND (T_el.telephone2=T_dup.telephone OR T_el.telephone2=T_dup.telephone2))
)
)
WHERE T_dup.ID IS NOT NULL
GROUP BY T_el.ID

关于php - mySQL 查询 - 简单的数学问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11293148/

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