2016-10-24 33 views
-1

我的查詢 SELECT * 從用戶 其中USER_ID = '$關鍵字' 或用戶名= '$關鍵字' 或電子郵件= '$關鍵字' 或Skype ='$關鍵字」 OR餘額= '$關鍵字' 還是花= '$關鍵字' 或狀態= $關鍵字「 或創建= '$關鍵字' OR last_auth = '$關鍵字'SELECT * FROM表,其中列包含關鍵字

問題

返回隨機r ows

+2

好 - 什麼關鍵詞,你把它叫做什麼「隨意行」顯示? –

+1

那麼首先,這些列中有多少是字符串(VARCHAR,CHAR,TEXT)?以及數字或日期/日期時間有多少?即。如果'balance'是一個數字,那麼在測試中看看它是否匹配'$ keyword'字符串有什麼意義? –

+0

mysql中的「like」關鍵字可以解決你的問題 –

回答

1

使用LIKE而不是嘗試獲得確切的值。

SELECT * from users where user_id LIKE '%$keyword' OR username LIKE '%$keyword%' OR email LIKE '%$keyword%' OR skype LIKE '%$keyword%' OR balance LIKE '%$keyword%' OR spent LIKE '%$keyword%' OR status LIKE '%$keyword%' OR created LIKE '%$keyword%' OR last_auth LIKE '%$keyword%' 

如果你在一些領域使用使用類似:

CAST(user_id AS CHAR) LIKE '%keyword%' 
相關問題