sqlite从两个表中提取两行来创建一个新表

时间:2015-04-06 12:28:09

标签: sqlite transpose multiple-tables

我有一个带有两个表的sqlite数据库

表1

------------------------------
TIME | ElevationA| ElevationB|
-----|-----------|-----------|
T1   |   eA1     |  eB1      |
T2   |   eA2     |  eB2      |

表2

------------------------------
TIME | Temperat A| Temperat B|
-----|-----------|-----------|
T1   |   tA1     |  tB1      |
T2   |   tA2     |  tB2      |

我正在寻找" 魔法"在给定时间创建所有参数的表的命令,例如:

SELECT WHERE TIME=T1 table1 AS ELEV ,table2 AS TEMP

这将导致

表3

------------
ELEV | TEMP |
-----|----- |
eA1  | tA1  |
eB1  | tB1  |

当然我可以用它来编写脚本但是我更喜欢在SQLite中创建一个视图,因为它更简单并且避免复制数据。 欢迎任何想法

1 个答案:

答案 0 :(得分:0)

您可以使用:

CREATE TABLE TABLE3(ELEV,TEMP);
INSERT INTO TABLE3(ELEV,TEMP) VALUES((SELECT TIME FROM TABLE1 WHERE TIME = T1),SELECT TIME FROM TABLE2 WHERE TIME =T2));

这两个select子句必须返回相同数量的记录。