mysql int類型where條件查詢時 自動轉換問題
表數據
正常查詢
- content存的是varchar類型,查的時候where content是字符類型,此時沒有數據。
異常查詢
- content存的是varchar類型,查的時候where content是數字類型,此時查詢出本來不匹配的數據。
- where content 數字類型的時候,會把數據表中字符類型轉成數字類型,再與where content匹配,而字符
10001-xxx-xx
轉成數字為10001
,這與php類似,所以匹配上了。
小結
- 查詢的時候,盡量讓數據類型與表字段數據類型保持一致