1

是否可以在一个查询中加入两个 mysql 查询?

喜欢:

select * from a + select * from b

这样我就可以在单个 php 循环中使用它们。

4

2 回答 2

3

如果它们具有相同的列数并且每列中的数据类型相同,则可以使用 aUNIONUNION ALL

select * 
from a 
UNION ALL
select * 
from b

如果您提供有关表、数据等的更多详细信息,则可能有另一种返回此数据的方式。

AUNION将只返回DISTINCT值,而 aUNION ALL选择所有值。

如果这是您需要走的路线,并且您仍然需要识别数据来自哪个表,那么您始终可以创建一个列来识别数据来自哪个表,类似于这样:

select *, 'a' TableName
from a 
UNION ALL
select *, 'b' TableName
from b

这使您可以区分数据来自哪个表。

于 2012-10-10T11:20:31.073 回答
0

我认为创建 sql“变量”更容易,例如:

select varA, varb from TableA, tableB;

你可以在 PHP 中使用值来访问属性。

这样,您可以在查询中获取条件,例如:

select varA, varb from TableA, tableB where varA.id = varB.foreingId bla bla...

;)

于 2012-10-10T11:44:01.697 回答