【问题标题】:PHP mySQL search for concatenated information across 2 fieldsPHP mySQL 跨 2 个字段搜索连接信息
【发布时间】:2012-06-27 10:01:24
【问题描述】:

我有一个运行良好的 mySQL 搜索系统。

mysql_query("SELECT * FROM electors WHERE constituency = '$constituency' AND ward = '$ward' AND (surname LIKE '$q' OR first_name LIKE '$q') LIMIT 18");

我还想搜索输入的术语(包括空格)是否是first_name ' ' surname. 的串联。这是如何完成的。

【问题讨论】:

标签: php mysql concat


【解决方案1】:

我想你会需要CONCAT:

mysql_query("SELECT * FROM electors WHERE constituency = '$constituency' AND ward = '$ward' AND (surname LIKE '$q' OR first_name LIKE '$q' OR CONCAT(first_name,' ',surname) LIKE '$q') LIMIT 18");

你不妨简化为:

mysql_query("SELECT * FROM electors WHERE constituency = '$constituency' AND ward = '$ward' AND CONCAT(first_name,' ',surname) LIKE '%$q%' LIMIT 18");

考虑将其设置为全名字段,然后您可以出于速度原因对其进行索引。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多