将两个并置列的表与同名sql连接起来

将两个并置列的表与同名sql连接起来,sql,sqlite,Sql,Sqlite,我有两个具有相同列名的sqlite3表,我想对它们进行比较。要做到这一点,我需要连接表并将同名的列并列。 这些表共享一个相同的列,我想将其作为第一列 假设我有t1表和t2表 表t1: SharedColumn | Height | Weight A | 2 | 70 B | 10 | 100 表t2: SharedColumn | Height | Weight A | 5 | 25

我有两个具有相同列名的sqlite3表,我想对它们进行比较。要做到这一点,我需要连接表并将同名的列并列。 这些表共享一个相同的列,我想将其作为第一列

假设我有t1表和t2表

表t1:

SharedColumn | Height | Weight
        A    |   2    |   70
        B    |   10   |   100
表t2:

SharedColumn | Height | Weight
        A    |   5    |   25
        B    |   32   |   30
我希望通过查询得到的结果是:

SharedColumn | Height_1 | Height_2 | Weight_1 | Weight_2
        A     |    2     |     5    |    70    |    25    
        B     |    10    |     32   |    100   |    30
在我的实际案例中,我有很多列,因此我希望避免将每个列的名称写两次来指定顺序


重命名列并不是我主要关心的问题,我最感兴趣的是同名列的并置。

在SQL中无法直接做到这一点,特别是因为您还想重命名列以识别其源,您必须使用动态SQL,并且诚实地说?不要

只需编写列名,大多数SQL工具都提供了生成select的方法,只需复制列名并将其放置在正确的位置:

SELECT t1.sharedColumn,t1.height as height_1,t2.height as height_2 ...
FROM t1
JOIN t2 ON(t1.sharedColumn = t2.sharedColumn)+

在SQL中没有直接实现这一点的方法,特别是因为您还想重命名列以标识其源,您必须使用动态SQL,并且诚实地说?不要

只需编写列名,大多数SQL工具都提供了生成select的方法,只需复制列名并将其放置在正确的位置:

SELECT t1.sharedColumn,t1.height as height_1,t2.height as height_2 ...
FROM t1
JOIN t2 ON(t1.sharedColumn = t2.sharedColumn)+

尝试以下查询以获得所需的结果

SELECT t1.Height AS Height_1, t1.Weight AS Weight_1, t1.sharedColumn AS SharedColumn
   t2.Height AS Height_2, t2.Weight AS Weight_2
   FROM t1 INNER JOIN t2
   ON t1.sharedColumn = t2.sharedColumn
   ORDER By t1.sharedColumn ASC
之后,您可以通过以下行获取结果:

$result['SharedColumn'];
$result['Height_1'];
$result['Height_2'];
$result['Weight_1'];
$result['Weight_1'];

尝试以下查询以获得所需的结果

SELECT t1.Height AS Height_1, t1.Weight AS Weight_1, t1.sharedColumn AS SharedColumn
   t2.Height AS Height_2, t2.Weight AS Weight_2
   FROM t1 INNER JOIN t2
   ON t1.sharedColumn = t2.sharedColumn
   ORDER By t1.sharedColumn ASC
之后,您可以通过以下行获取结果:

$result['SharedColumn'];
$result['Height_1'];
$result['Height_2'];
$result['Weight_1'];
$result['Weight_1'];

执行和连接表需要什么查询?实际上我不知道如何编写查询,这是我的问题。我正在寻找一个可以合并我的两个表的查询,如我在t1和t2表的小示例中所述。执行和连接表需要什么查询?实际上我不知道如何编写查询,这是我的问题。我正在寻找一个可以合并我的两个表的查询,如我在t1和t2表的小示例中所述。是的,谢谢,我也考虑过这个查询结构。在SELECT中写入每个列名确实是一个选项。不过,我不想一个接一个地写。如何获得相同的结果表结构,但不重命名列?因为你似乎说重命名是主要问题是的,谢谢,我也考虑过这个查询结构。在SELECT中写入每个列名确实是一个选项。不过,我不想一个接一个地写。如何获得相同的结果表结构,但不重命名列?因为你似乎说重命名是主要问题