1
我有一種奇怪的問題。我正在編寫一個公司內部應用程序的控制面板,該應用程序在後端使用MySQL數據庫。MySQL與LIKE,通配符和前導零選擇
我現在有這樣的語句:
SELECT * FROM users WHERE ldap_user LIKE '%--Searchterm--%' OR Firstname LIKE '%--Searchterm--%' OR Lastname LIKE '%--Searchterm--%' OR id LIKE '%--Searchterm--%';
其中 「--Searchterm--」 我是通過PHP提供。現在我希望能夠交出一個帶有前導零的searchterm,並且仍然能夠將它與未加註的id相匹配。
我知道,我可以用PHP剝離零值,但如果可能的話,我想要一個純粹的MySQL解決方案。
我不知道要尋找什麼,因爲我發現的一切都沒有解決選擇查詢,而是在搜索除id之外的其他字段。
如果可能,我更喜歡一個查詢,它不使用一些野JOIN,而是普通的MySQL。
不是很理解它,你的意思是,查詢搜索數據時返回的數據應該是零?你可以在數據庫中顯示一些示例數據併爲搜索顯示示例輸入嗎? –
是searchterm始終是數字嗎?如果不是,那麼你不能使用'WHERE ... LIKE CONCAT('%',searchterm + 0,'%')'這個簡單的技巧,因爲這會把你傳入的任何實際的搜索字符串弄糟。 –
你的意思是搜索倒排變體,如:「'--Searchterm - 0000000'LIKE ldap_user」和ldap_user的值爲'% - Searchterm - %'? – Justinas