SQL按主键顺序从两个表中获取结果

raj*_*504 0 sql

在我的查询中,我想从两个不同的表中获取主键下降的行.它们有两个不同的键,因此可以在一个查询中执行此操作吗?

ano*_*non 5

你的问题有点模糊.要"从两个不同的表中获取行",您可以执行JOIN,或者可以执行UNION.

在JOIN的情况下:

SELECT a.id, a.something, b.id, b.something
FROM a
INNER JOIN b ON b.aId = a.id
ORDER BY a.id, b.id
Run Code Online (Sandbox Code Playgroud)

如果是UNION:

SELECT id, something
FROM (
    SELECT a.id. a.something FROM a
    UNION 
    SELECT b.id, b.something FROM b
) t
ORDER BY t.id
Run Code Online (Sandbox Code Playgroud)

这些是非常不同的,但似乎其中一个将满足您的需求.

(请注意,UNION默认情况下会消除重复项.使用UNION ALL保留重复项.)