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。

推薦閱讀: