0
我期望“标记”我的SQLite数据库的条目。这下面的命令将从other_table
添加新条目:插入并从其他表和附加值中选择
INSERT OR IGNORE INTO landing_table (idx)
SELECT gidx FROM other_table
不过,我想只更新不存在landing_table
那些在other_table
存在项具有较高的计算值设置为1。
INSERT OR IGNORE INTO landing_table idx (idx, computed)
SELECT gidx FROM other_table
AND SET computed=1
显然这是不正确的。我想在单个插入语句中执行此操作,而不是插入和将来的UPDATE
语句。
你的第二句话令人困惑;你是否想要插入不存在的行,但是如果它们存在,那么将'computed'设置为'1'? (还有什么是错误的2语句+交易?) –
@ColonelThirtyTwo是的,这是正确的。如果它们存在,我想跳过行,但是如果它们不行,我想插入它们,并设置'computed = 1'。我目前在两次交易中都这样做,但速度很慢,因为我必须重新搜索表格以找到我插入的表格。我希望在一个声明中这样做。可能吗? – Hooked