我有两张桌子
USERS 包含用户数据
Mobilephone
447777744444
447777755555
7777755555个
7777766666
MOBILEPHONES 包含手机号码
电话号码
7777744444个
7777733333个
7777755555个
7777766666
如果我运行跟随SQL,它只返回完全匹配且不执行通配符搜索的数字。
SELECT MobilePhones.*, users.FirstName FROM MobilePhones
LEFT JOIN users
ON (users.MobilePhone= MobilePhones.`Telephone No`)
WHERE users.MobilePhone LIKE CONCAT('%', MobilePhones.`Telephone No`, '%')
我被退回
7777755555
7777766666
我想要的是
7777755555
7777766666个
447777755555
447777744444
答案 0 :(得分:1)
我想您可能希望将WHERE
子句移动到连接的ON
子句中,替换现有的ON
子句,它正在进行完全匹配:
SELECT MobilePhones.*, users.FirstName
FROM MobilePhones
LEFT JOIN users ON users.MobilePhone LIKE CONCAT('%', MobilePhones.`Telephone No`, '%')