2013-07-23 135 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