小编典典

mysql完全匹配的地方

sql

当我写这个查询

SELECT cd.title, cd.city FROM coupon_detail cd WHERE cd.id = 260;

返回

title            city  
---------------  ------
Butterfly world  Mohali

当我写的时候

SELECT cd.title, cd.city FROM coupon_detail cd WHERE cd.id = '260abcxyz';

返回

title            city  
---------------  ------
Butterfly world  Mohali

看到第二个是错的。我想仅在ID ID完全匹配时获取值…如何解决此问题。谢谢你的帮助。


阅读 186

收藏
2021-04-07

共1个答案

小编典典

您可以将转换id为字符串,以便准确进行比较。您可能LIKE会导致隐式转换

SELECT cd.title, cd.city FROM coupon_detail cd WHERE cd.id LIKE '260abcxyz';

或其他方式,您可以显式执行投射

SELECT cd.title, cd.city FROM coupon_detail cd WHERE CAST(cd.id AS CHAR) = '260abcxyz';

但是,如果您所有的ID都是整数,则在尝试查询数据库之前检查这些值可能更合适。(如果您要查询的ID不是数字,则始终无法匹配。)

2021-04-07