Mysql查詢以某"字符串"開頭的查詢方式
Mysql查詢以某"字符串"開頭的查詢
查詢不以某個或者某些字符串為開頭的字符串
1、使用left()函數
select * from order where left(id,2)<>"AB";
2、使用like
select * from order where id not like "%AB%";
查詢以某個或者某些字符串為開頭的字符串
1、使用left()函數
select * from order where left(id,2)="AB";
2、使用like
select * from order where id like "%AB%";
Mysql查詢條件字符串類型 = 0
假如有表A
id | int |
---|---|
name | varchar |
A表中有以下數據
id | name |
---|---|
1 | 張三 |
2 | 李四 |
3 | 2王五 |
執行以下sql:
select * from A where name = 0;
會將id=1,id=2的結果返回。
select * from A where name = 2;
會將id=3的結果返回。
為什麼?
因為Mysql “Strings are automatically converted to numbers and numbers to strings as necessary”,字符串自動轉換為數字,數字自動轉換為字符串 。
當字符串和數字比較時,mysql會從字符串開頭截取數字,沒有數字的直接轉成0。
不建議不同類型的數據進行比較。
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。