1

下面的查询效果很好。它从表格“提交”中提取邮政编码,将它们分组,然后按顺序列出它们。

我有另一个名为“地址”的表,其中也有邮政编码,它可能与“提交”中的邮政编码重复,也可能不重复。

如何加入出现在“地址”(第二个表)中但未出现在第一个表中的任何邮政编码,并将它们添加到由下面的查询创建的列表中?

$query2 = "SELECT submissionid, zip
FROM submission
GROUP BY zip
ORDER BY zip ASC";  
4

2 回答 2

0

你需要联合词,你不能使用submissionid

select zip from submission
union
select zip from addresses

union 默认情况下会给你不同的值。如果您需要 id,您可以对结果查询执行类似的操作以选择特定的:

MySQL:避免选择具有相同用户 ID 的列

这个使用一组相同拉链的最低 id。

于 2012-05-29T03:47:00.583 回答
0

你也可以从另一个表中伪造一个 id,因为它没有提交id

select * from (
    select submissionid, zip from submission
    union
    select -1, zip from addresses
    )
order by zip asc

地址表中的所有邮政编码都将具有 -1 而不是 id。

于 2012-05-29T03:59:10.577 回答