Php 有没有办法将WHERE子句与两个VARCHAR字段组合使用

Php 有没有办法将WHERE子句与两个VARCHAR字段组合使用,php,mysql,sql,Php,Mysql,Sql,我正在创建一个新的PHP页面,我有一个变量,它由添加MySQL数据库的两个字段组成。我想找出哪一行对应于由两个字段组合而成的变量 我在网上找不到任何答案,而当我找到答案时,这些答案似乎都不起作用 数据库示例: ID | Name 1 | Name 2 ----+---------+-------- 1 | john 1 | doe 2 | jane | doe 3 | john | doe 4 | john | doe 1 我应该与一行匹配的变量是$va

我正在创建一个新的PHP页面,我有一个变量,它由添加MySQL数据库的两个字段组成。我想找出哪一行对应于由两个字段组合而成的变量

我在网上找不到任何答案,而当我找到答案时,这些答案似乎都不起作用

数据库示例:

 ID | Name 1  | Name 2
----+---------+--------
 1  | john 1  | doe
 2  | jane    | doe
 3  | john    | doe
 4  | john    | doe 1
我应该与一行匹配的变量是$var=john doe 1;,拆分我的变量不是一个选项

我希望所述SQL语句的输出是ID=4的行

编辑:我不相信这是一个重复。我对CONCAT子句本身没有任何问题,我只是在咨询使用哪一个子句以及如何使用它,而不是如何修复当前的子句。

您似乎想要:

where concat(name1, ' ', name2) = 'john doe 1'
注意:很容易写:

where concat(name1, ' ', name2) = '$var'

但是,在将常量值传递到查询中时,您应该学会使用参数。

3原因:1。你回答了一个重复的问题。2.您使用了concat而不是concat_WS。3.你没有展示如何使用事先准备好的陈述,这部分内容很不清楚。