前几天就在工作中发现这样一个问题:当某个字段的类型为varchar时,字段保存的值类似‘100,200,300‘ 和 ‘100‘ 或 ‘100,400‘。写SQL语句的时候就会犯这样的错误,例如:
select id,provinceid from admin where provinceid in (‘100‘); select id,provinceid from admin where provinceid in (100);
会发现上面2条SQL的查询结果并不相同,正确的SQL是第2条。因为字段保存的值类似‘100,200,300‘,并不是‘100‘,‘200‘,‘300‘这样的值,所以第2条的SQL才正确。
时间: 2024-10-17 01:58:46