Php 显示其他选项卡中不存在的选项卡的一部分
我有两个标签,分别命名为liste_pieces和client_pieces 第一个包含大约1000个元素的列表。第二个包含第一个的某些元素 实际上我在做一个查询,用第一个来填充第二个选项卡 我还想显示第一个元素中不在第二个元素中的所有元素 我想我可以做一个关节,因为关节只显示两个选项卡中的元素 事实上,这不是我想要的 我现在已经问过了Php 显示其他选项卡中不存在的选项卡的一部分,php,mysql,Php,Mysql,我有两个标签,分别命名为liste_pieces和client_pieces 第一个包含大约1000个元素的列表。第二个包含第一个的某些元素 实际上我在做一个查询,用第一个来填充第二个选项卡 我还想显示第一个元素中不在第二个元素中的所有元素 我想我可以做一个关节,因为关节只显示两个选项卡中的元素 事实上,这不是我想要的 我现在已经问过了 <table id="box-table-a" width="100%"> <tr> <th
<table id="box-table-a" width="100%">
<tr>
<th scope="col" width="50%">LISTE DES PIÈCES</th>
<th scope="col" width="50%">AJOUT ?</th>
</tr>
<?php $sql="SELECT * FROM `liste_pieces`";
$result=mysql_query($sql) or die;$i=0;
while($data=mysql_fetch_assoc($result))
{?>
<tr>
<td><?php echo $data['libelle'] ; ?></td>
<td style="text-align:center" align="center">
<p align="center"> <input type="hidden" name="piece[<?php echo $i ; ?>]" value="0" /><input type="checkbox" class="checkbox" value="1" name="piece[<?php echo ++$i ; ?>]" id="piece[<?php echo ++$i ; ?>]" /></p></td>
</tr>
<?php } ?>
但这会向我显示第一个选项卡中的所有元素。我真的不知道如何删除第二个选项卡中存在的元素
列表中的列id与第二个选项卡中的列id相同,只是称为id\u piece
我有点迷路了
我不知道如何处理
受到我最大的尊重
亲切的问候
SP.使用这样的查询
从列表项中选择*列名称不在列表项中从客户端选择列名称
及
选择*从客户端\u块,其中列\u名称不在列表\u块中选择列\u名称
这将解决您的问题,列名称应以相同的数据类型出现在两个表中。使用如下查询
从列表项中选择*列名称不在列表项中从客户端选择列名称
及
选择*从客户端\u块,其中列\u名称不在列表\u块中选择列\u名称
这将解决您的问题,列名称应以相同的数据类型出现在两个表中。此查询应为您解决问题。是的,这是一个连接查询,按照您要求的方式:
select
a.col1,
a.col2,
b.col1 // etc
from
liste_pieces a
join client_pieces b
on a.id=b.id_peice
where b.id_piece is null
以下是我的数据库中的一个示例:
mysql> select id, brand from cars;
+----+-------+
| id | brand |
+----+-------+
| 1 | 2 |
| 2 | 1 |
| 3 | 3 |
| 4 | 4 |
| 5 | 2 |
| 6 | 5 |
| 7 | 1 |
| 8 | 2 |
| 9 | 2 |
| 10 | 5 |
| 11 | 2 |
+----+-------+
11 rows in set (0.00 sec)
mysql> select id, brand from brands;
+----+--------+
| id | brand |
+----+--------+
| 1 | Ford |
| 2 | Toyota |
| 3 | Nissan |
| 4 | Smart |
| 5 | BMW |
| 6 | Holden |
+----+--------+
6 rows in set (0.00 sec)
select
a.brand
from
brands a
left join cars b
on a.id=b.brand
where
b.brand is null
+--------+
| brand |
+--------+
| Holden |
+--------+
1 row in set (0.00 sec)
另外:我刚刚写了一个非常长的问题和答案,涵盖了这个确切的问题和答案,我希望这将有助于澄清联接如何在表上工作,以及如何从数据库中的多个表中获取信息 这个查询应该可以帮到你。是的,这是一个连接查询,按照您要求的方式:
select
a.col1,
a.col2,
b.col1 // etc
from
liste_pieces a
join client_pieces b
on a.id=b.id_peice
where b.id_piece is null
以下是我的数据库中的一个示例:
mysql> select id, brand from cars;
+----+-------+
| id | brand |
+----+-------+
| 1 | 2 |
| 2 | 1 |
| 3 | 3 |
| 4 | 4 |
| 5 | 2 |
| 6 | 5 |
| 7 | 1 |
| 8 | 2 |
| 9 | 2 |
| 10 | 5 |
| 11 | 2 |
+----+-------+
11 rows in set (0.00 sec)
mysql> select id, brand from brands;
+----+--------+
| id | brand |
+----+--------+
| 1 | Ford |
| 2 | Toyota |
| 3 | Nissan |
| 4 | Smart |
| 5 | BMW |
| 6 | Holden |
+----+--------+
6 rows in set (0.00 sec)
select
a.brand
from
brands a
left join cars b
on a.id=b.brand
where
b.brand is null
+--------+
| brand |
+--------+
| Holden |
+--------+
1 row in set (0.00 sec)
另外:我刚刚写了一个非常长的问题和答案,涵盖了这个确切的问题和答案,我希望这将有助于澄清联接如何在表上工作,以及如何从数据库中的多个表中获取信息 “tab”你是指“tables”吗?哦,是的,对不起,在法国我用这个词,这是table的快捷方式,你是指“tables”吗?哦,是的,对不起,在法国,我用这个词,这是table的快捷方式,比你多了,我不知道这种请求确实存在。虽然这会起作用,两个表上的连接将提供更高效的查询-尽可能避免使用类似于中的函数。有关更多信息,请参阅。我不知道这种请求确实存在。虽然这会起作用,两个表上的联接将提供更高效的查询-尽可能避免使用类似于中的函数。有关详细信息,请参阅。非常感谢,这对我理解联接有很大帮助。@StanislasPiotrowski为您提供了一个我认为会有所帮助的示例。当一个不在。。。查询会起作用,但效率不高,而且随着数据行数的增加,情况会变得更糟。非常感谢,它帮助我了解了这个联合体。@StanislasPiotrowski给你举了一个我认为会有帮助的例子。当一个不在。。。查询将起作用,但这样做效率不高,而且随着数据行数的增加,情况会变得更糟。