Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.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 如何从mysql数据库中的表中获取不匹配的值_Php_Mysql_Join - Fatal编程技术网

Php 如何从mysql数据库中的表中获取不匹配的值

Php 如何从mysql数据库中的表中获取不匹配的值,php,mysql,join,Php,Mysql,Join,我在从mysql数据库表中获取数据时遇到问题。 我有两个表,如下图中的表1和表2。当pilotid不等于表1中的1时,如何从表2中获取数据 如果理解正确,我不确定,但这将返回表1中所有在表2中没有匹配项的行。您可以找到的相应文档不存在 我不确定是否理解正确,但这将返回表1中所有在表2中没有匹配项的行。您可以找到的相应文档不存在 选择a.venueid、a.name 来自表2 a,表1 b 其中b.pilotid 1和b.venueid=a.venueid; 选择a.venueid和a.name

我在从mysql数据库表中获取数据时遇到问题。 我有两个表,如下图中的表1和表2。当pilotid不等于表1中的1时,如何从表2中获取数据


如果理解正确,我不确定,但这将返回表1中所有在表2中没有匹配项的行。您可以找到
的相应文档不存在


我不确定是否理解正确,但这将返回表1中所有在表2中没有匹配项的行。您可以找到
的相应文档不存在

选择a.venueid、a.name
来自表2 a,表1 b
其中b.pilotid 1和b.venueid=a.venueid;
选择a.venueid和a.name
来自表2 a,表1 b
其中b.pilotid 1和b.venueid=a.venueid;
$sql=“从pilotid 1所在的表1中选择Venueid”;
$data=mysql\u查询($sql);
while($row=mysql\u fetch\u assoc($data))
{
$ids[]=$row['Venueid'];
}
$sql2=“从表2中选择*,其中venueid位于(“.inplade(',',$ids)。”);
$data2=mysql\u查询(sql2);
//$data2包含结果集资源;
$sql=“从pilotid 1所在的表1中选择Venueid”;
$data=mysql\u查询($sql);
while($row=mysql\u fetch\u assoc($data))
{
$ids[]=$row['Venueid'];
}
$sql2=“从表2中选择*,其中venueid位于(“.inplade(',',$ids)。”);
$data2=mysql\u查询(sql2);
//$data2包含结果集资源;

您从何处获得
13
,以及来自?13和15的
15
值是案例指示您要排除多个ID时的示例。您从何处获得
13
,和
15
13和15中的值是案例要求排除多个ID时的示例。这是一种非常糟糕的做法。SQL被设计来处理这些类型的过滤和排序需求。它比PHP做这些事情都要快,而且它可以保证事务安全和数据完整性,而PHP实现需要为此付出额外的努力。这是一种非常糟糕的做法。SQL被设计来处理这些类型的过滤和排序需求。它比PHP做这些事情都要快,而且它可以保证事务安全和数据完整性,而PHP实现需要为此付出额外的努力。
SELECT * 
  FROM table-1 t1
  WHERE NOT EXISTS( SELECT * FROM table-2 t2 WHERE t1.`Venueid` = t2.`Venueid` )
select a.venueid, a.name 
from table2 a, table-1 b 
where b.pilotid <> 1 and b.venueid = a.venueid;
SELECT        Table_2.*
    FROM      Table_2
    LEFT JOIN Table_1
        ON    Table_2.Venueid = Table_1.Venueid
    WHERE     Table_1.Venueid != 1
        OR    Table_1.Venueid NOT IN(1, 13, 15);
$sql = "select Venueid from Table1 where pilotid <> 1";
$data = mysql_query($sql);
while($row = mysql_fetch_assoc($data))
{
 $ids[] = $row['Venueid'];
}
$sql2 = "select * from Table2 where venueid IN(".implode(',', $ids).")";
$data2 = mysql_query(sql2);

//$data2 contains the result-set resource;