当前位置: 首页 > 面试题库 >

在sqlite3中合并两个表

刁丰羽
2023-03-14
问题内容

我在两个单独的sqlite3数据库中有两个表。数据类型相同,但架构略有不同。我希望它们成为具有相同架构的单个数据库中的单个表Table 2

表格1

CREATE TABLE temp_entries (
    id INTEGER PRIMARY KEY, 
    sensor NUMERIC, 
    temp NUMERIC, 
    date NUMERIC);

表2

CREATE TABLE "restInterface_temp_entry" (
    "id" integer NOT NULL PRIMARY KEY,
    "dateTime" integer NOT NULL,
    "sensor" integer NOT NULL,
    "temp" integer NOT NULL
);

id在两个表之间不是唯一的。我想使用与相同的架构创建另一个表Table 2。我希望id表1中的条目从0开始,然后从的条目从table 2在的最后一个条目之后开始table 1

理想情况下,我想刚刚从添加条目Table 1,以Table 2和“重新索引”的主键,以便它是在同一个升序说:“日期时间”是。

更新 :现在我两个表都使用相同的架构,我通过创建一个具有与拥有Table 2的数据库相同的架构的新表来做到这一点Table 1。然后,我将数据复制到新表中,如下所示:

INSERT INTO restInterface_temp_entry(id,dateTime,sensor,temp)
   ...> select id,date,sensor,temp FROM temp_entries;

背景

我曾经将一堆录制temp_entries到一个csv文件中。我想将数据放入一种更易于使用的格式,并选择了sqlite3。我编写了一个程序,将所有条目拉出并放入Table 1。我不确定当时我在做什么,并用于Table 2所有新条目。现在,我想将它们全部结合起来,希望将ID和日期按升序排列。


问题答案:

弄清楚了。

  • 打开当前数据库。

  • 附加到原始数据库

    ATTACH '/orig/db/location' as orig
    
  • 将记录从当前数据库移动到旧数据库,而忽略PK

    insert into orig.restInterface_temp_entry(dateTime,sensor,temp)
    

    …> select dateTime,sensor,temp from main.restInterface_temp_entry;

  • 清除当前数据库表

    delete from main.restInterface_temp_entry where id > 0
    
  • 将所有更新的记录从原始数据库表复制回当前目录。

    insert into main.restInterface_temp_entry(id,dateTime,sensor,temp)
    

    …> select id,dateTime,sensor,temp
    …> from orig.restInterface_temp_entry;



 类似资料:
  • 问题内容: 我有两个json 第一个是 第二个是 我想合并它们并有一个像 有没有办法合并它们?如果需要在JSON中更改结构,对我来说也可以 谢谢。 问题答案: 像应该工作。 官方PHP文档中的 array_merge 官方PHP文档中的 json_decode 编辑: 尝试将第二个参数添加到json_decode。这样会将对象转换为关联数组。

  • rank ▲ ✰ vote url 65 357 50 683 url 合并两个列表 怎样合并两个列表? 例如: listone = [1,2,3] listtwo = [4,5,6] 我期待: mergedlist == [1, 2, 3, 4, 5, 6] 在Python中非常容易. mergedlist = listone + listtwo

  • 我想将两个ObjectNode合并在一起,但要具有最佳的复杂性。我知道一种方法,我可以使用setAll方法,但它返回JsonNode,因此我必须转换它。我发现的转换过程的最佳方法是如何将JsonNode转换为ObjectNode。我认为这种转换一旦迭代Json,也许我们可以找到一个更好的解决方案。 我认为第二种方法是迭代第二个ObjectNode,然后用put方法一个接一个地添加到第一个Objec

  • 问题内容: 我想将两个选择查询与结合在一起。 如何使用第二个中的第一个结果? 问题答案: 使用 CTE 可以在多个查询中重用子查询的结果。 为此,您需要PostgreSQL 8.4+: 您最有可能想要而不是。不排除重复项,这样可以更快。

  • 问题内容: 我正在使用下面的代码合并两个csv(数据帧): 我有以下CSV文件 文件1: 文件2: 合并后 如果您注意到student_id的开头附加了0,应该将其视为文本,但是在合并并使用函数后,它将其转换为数字并删除了前导0。 即使在to_csv之后,如何将列保持为“文本”? 我认为它的to_csv函数可以再次保存为数字添加了dtype = {‘student_id’:str}。 问题答案:

  • 在编程我的bukkit插件时,我意识到我需要有自己的配置文件,这样我就可以在该文件中添加注释。我还需要能够更新配置(如果它已经创建并且是旧的)。 我最近还完成了一个简单的jQuery插件,其中使用了,并合并了两个设置数组。我想知道在配置文件的java中是否可以这样做。 我的问题: 相当简单。假设这是我的默认配置。插件已经在插件文件夹中复制了这个配置(如果还没有的话)。但是,这带来了一个问题: 有一