Mysql查询以某"字符串"开头的查询方式
吾爱主题
阅读:209
2024-04-01 23:21:56
评论:0
Mysql查询以某"字符串"开头的查询
查询不以某个或者某些字符串为开头的字符串
1、使用left()函数
?1 | select * from order where left (id,2)<> "AB" ; |
2、使用like
?1 | select * from order where id not like "%AB%" ; |
查询以某个或者某些字符串为开头的字符串
1、使用left()函数
?1 | select * from order where left (id,2)= "AB" ; |
2、使用like
?1 | select * from order where id like "%AB%" ; |
Mysql查询条件字符串类型 = 0
假如有表A
id | int |
---|---|
name | varchar |
A表中有以下数据
id | name |
---|---|
1 | 张三 |
2 | 李四 |
3 | 2王五 |
执行以下sql:
?1 | select * from A where name = 0; |
会将id=1,id=2的结果返回。
?1 | select * from A where name = 2; |
会将id=3的结果返回。
为什么?
因为Mysql “Strings are automatically converted to numbers and numbers to strings as necessary”,字符串自动转换为数字,数字自动转换为字符串 。
当字符串和数字比较时,mysql会从字符串开头截取数字,没有数字的直接转成0。
不建议不同类型的数据进行比较。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/weixin_55527323/article/details/124038806
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。