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

,例如

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

我以为这是要使用的代码,但无济于事。自从我这样做已经有一段时间了,我不记得确切地如何获得期望的结果。

最佳答案

您正在寻找 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

关于mysql - 如何选择两列为一?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7256096/

10-13 23:11