我们如何将and&or运算符与simple join一起使用?

eoxn13cs  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(296)

我的数据库customeraddress和area中有两个表。
CustomerAddress列是-
id(主键),
areaid(参考表区域的外键),
客户ID,
地址行1,
地址行2,
地标,
pincode代码,
首选,
区域列为-
区域ID(主键),
姓名,

SELECT * FROM CustomerAddresses CA, Areas A 
 WHERE CA.areaId = A.areaId
 AND 
 CA.customerId = 1 
 AND 
 ( CA.addressLine1 like 'd'
 OR 
   CA.addressLine2 like 'd' 
 OR 
   CA.landmark like 'd' 
 OR 
   CONVERT(pincode, CHAR) like 'd' 
 OR 
   A.name like 'd' );

我想从customeraddress中提取一个客户的所有地址,然后搜索这些记录中是否存在字符“d”。
返回空集的查询。

shstlldc

shstlldc1#

这里的问题不是连接,而是在连接前后缺少通配符 d 在你的 like 电话:

CA.addressLine1        like '%d%' OR 
CA.addressLine2        like '%d%' OR 
CA.landmark            like '%d%' OR
CONVERT(pincode, CHAR) like '%d%' OR
A.name                 like '%d%' 
-- These --------------------^-^

相关问题