MySQL屬性名要加單引號
引言
在MySQL的查詢中,如果需要使用屬性名進行查詢,我們需要加上單引號,這是為什么呢?
原因
MySQL的語法規定,如果我們要使用普通字符串進行查詢,需要加上單引號,例如:
SELECT * FROM table_name WHERE column_name = 'value'
但是如果我們要使用屬性名進行查詢,也需要加上單引號,例如:
SELECT * FROM table_name WHERE 'column_name' = 'value'
這是因為MySQL會把沒有加單引號的字符串解析成屬性名或者表名,因此加上單引號可以避免解析錯誤。
舉例
比如我們有一張表叫做users,其中有兩列分別是id和name。
如果我們要查詢id為1的用戶,我們可以使用以下SQL語句:
SELECT * FROM users WHERE id = 1
但是如果我們要查詢name為'John'的用戶,我們必須加上單引號:
SELECT * FROM users WHERE 'name' = 'John'
結論
在MySQL查詢中,如果要使用屬性名進行查詢,需要加上單引號,這可以避免解析錯誤。雖然加上單引號會稍稍增加一點工作量,但是這可以讓我們的查詢更加準確、穩定。
上一篇mysql屬性唯一性