Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 是否可以在多个列上使用相同的IN语句和相同的值?_Php_Sql_Mysqli - Fatal编程技术网

Php 是否可以在多个列上使用相同的IN语句和相同的值?

Php 是否可以在多个列上使用相同的IN语句和相同的值?,php,sql,mysqli,Php,Sql,Mysqli,我正在尝试选择任何列('Vorname'和'Name')中包含$sql\u eingabe的所有行 第一次尝试只需一列即可: $sql = "SELECT * FROM Mitglied WHERE (Vorname) IN ($sql_eingabe)"; 但当添加另一列时,查询中断 $sql = "SELECT * FROM Mitglied WHERE (Vorname, Name) IN (($sql_eingabe),($sql_eingabe))"; 我得到这个警告: mysql

我正在尝试选择任何列('Vorname'和'Name')中包含
$sql\u eingabe
的所有行

第一次尝试只需一列即可:

$sql = "SELECT * FROM Mitglied WHERE (Vorname) IN ($sql_eingabe)";
但当添加另一列时,查询中断

$sql = "SELECT * FROM Mitglied WHERE (Vorname, Name) IN (($sql_eingabe),($sql_eingabe))";
我得到这个警告:

mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in...

使用正确的语法:

SELECT * 
FROM Mitglied 
WHERE 
    Vorname IN ('value1', 'value2')
OR
    Name IN ('value1', 'value2')

为什么要用
php html
?也许我快疯了,但我看不出你发布的前两个代码片段有什么区别……你的sql语法是invalid@u_mulder如果是正确的,则中的
语句对于多个列不是这样工作的。你需要使用某种类型的
EXISTS
语句,根据你想要的逻辑,你可以在
语句中使用两个
,一个
,或者
似乎你错过了一个结束语''非常感谢你,不知道我自己为什么没有得到它