如何选择两列作为一个?

时间:2011-08-31 11:10:28

标签: mysql

我正在尝试使用PHP从MySQL数据库中搜索两个字段。

e.g。

mysql_query("
  SELECT (first_name,last_name) As name
  FROM people
  WHERE (name LIKE '%" . $term . "%')
");

我认为这是要使用的代码,但无济于事。我做了这个已经有一段时间了,我不记得究竟如何达到预期的结果。

2 个答案:

答案 0 :(得分:74)

您正在寻找CONCAT功能。

mysql_query("SELECT CONCAT(first_name, last_name) As name FROM people WHERE (CONCAT(first_name, last_name) LIKE '%" . $term . "%')");

甚至......

mysql_query("SELECT CONCAT(first_name, ' ', last_name) As name FROM people WHERE (CONCAT(first_name, ' ', last_name) LIKE '%" . $term . "%')");

我无法解释你背后的原因(......但也许有人可以发表评论?),但你不能使用name别名来搜索这两个字段,你必须明确再次CONCAT

答案 1 :(得分:4)