我想使用WHERE語句進行搜索,但不區分大小寫。我被告知我可以使用LCASE()
,但是我將如何使用以下方法來做到這一點?LCASE where search
mysql_query("SELECT * FROM table WHERE fieldt = '" .$_POST['thisf']. "'");
我想使用WHERE語句進行搜索,但不區分大小寫。我被告知我可以使用LCASE()
,但是我將如何使用以下方法來做到這一點?LCASE where search
mysql_query("SELECT * FROM table WHERE fieldt = '" .$_POST['thisf']. "'");
你就可以欺騙它witht使兩者(場和所需的數據):
mysql_query("SELECT * FROM table WHERE UCASE(fieldt) Like UCASE('" .strtoupper($_POST['thisf']). "')");
不,仍然區分大小寫。 – 2011-03-29 14:52:58
@gdscei - 'LIKE'使其不敏感。 – 2011-03-29 14:54:46
嘗試過,仍然敏感。 – 2011-03-29 15:04:59
假設我沒有介紹一堆語法錯誤:在上/戀人情況下
mysql_query("SELECT * FROM table WHERE lcase(fieldt) = lcase('" .$_POST['thisf']. "')");
不,仍然區分大小寫。 – 2011-03-29 14:53:18
@gdscei:你正在測試什麼字符集(和特定字符)? – 2011-03-29 14:56:53
latin1_swedish_ci,並且沒有特殊字符,而是簡單的大寫/小寫字母和/或數字。 – 2011-03-29 15:04:26
僅供參考:此代碼不受SQL注入的保護。 – 2011-03-29 14:47:32
@丹尼爾:我知道這一點。這只是一個例子。 – 2011-03-29 14:53:39
您可以將列設置爲不區分大小寫,因此您不必執行任何lcaseing – dqhendricks 2011-03-29 15:09:47