SQL-从自身创建带有新行的表(插入到?)

时间:2019-03-28 13:15:50

标签: sql

我想创建一个表,该表将保留其当前行并为每个月添加新行,但是没有找到如何将表与自身连接以获得我想要的东西。

今天我有一张桌子,上面有2月的“ current_records” 还有一个create table语句,该语句从2月获取我的值,并在另一个“ current_month_table”上进行并集以将我的所有记录加入“ all_records_table”中,因此我获得了所有2月+ 3月的记录。但是我不想为每个月创建一个新表。

明天我要使用“ current_month_table”列出四月份的结果,并将其附加到现有的“ all_records_table”结果中。

我在Create SQL table with the data from another table那里检查过,因为它似乎提供了很好的建议,但我没有使它起作用。

CREATE TABLE `/Users/SQL essais/current_month_table` as c_m_t 
   INSERT INTO `/Users/SQL essais/all_records_table`  
    SELECT
            *
 FROM `/data`

结果是用all_records_table中的数据完全替换了current_month_table中的数据,在那儿我希望数据沿相反方向移动(而不是替换而是添加行)。

1 个答案:

答案 0 :(得分:1)

听起来像您只需要插入选择即可。

INSERT INTO all_records_table (Field1, Field2, Field3)
(SELECT Field1, Field2, Field3
FROM current_month_table)

您可以在Select语句中添加所需的任何联接和过滤器。 如果您需要更多信息,请发布表中数据的其他示例。