2013-07-23 136 views
0

我的客戶表中包含名字和姓氏的文件以及其他詳細信息。跨搜索字段的mysql搜索

在一個表單中,用戶可以輸入一個我有工作的搜索,但是隻有唯一的fiels,例如搜索名字或姓氏中的任何一個。這一切正常

但是我不知道如何搜索,如果用戶輸入約翰史密斯這將是兩個領域的組合。我該如何使用當前的數據結構進行搜索?

伊夫試圖使用SELECT語句添加字段:

Concat_ws (' ', firstname, lastname) as fullname 

但我不能使用,其中在此產生磁場,並拋出一個錯誤

我應該創建一個新的領域包含全名?

謝謝

回答

1

您不在別的地方使用別名。而是使用完整的功能

例如,

where Concat_ws(' ', firstname, lastname) like '%<your search>%' 

但是,是的,這是好主意,以創建一個新的領域,以優化性能
並確保您不要在函數名稱

+0

謝謝。你說海岸專欄的時候我的語法錯了。現在在正確的地方工作。我還會研究全文本選項。謝謝 – Ray

1

這取決於你想要的字段,其組合後具有空間。例如firstname = 'john' AND lastname='smith'可以完成這項工作,但它可能不是您需要的。

最好的解決方案是使用fulltext search

+0

謝謝。我也會研究全文搜索 – Ray