开发者社区 问答 正文

SQLite条件插入或者替换

需要网sqlite数据库中插入或替换记录,并且更新条件是,新的值大于旧的值。
schema:
CREATE table IF NOT EXISTS SearchTable
(Owner INTEGER PRIMARY KEY, Generations INTEGER DEFAULT 0)
试过下面的命令:
INSERT OR REPLACE INTO SearchTable(Owner, Generations)
VALUES (?, MAX((SELECT Generations FROM SearchTable WHERE Owner = ?), ?))
但是返回的结果是空值。

展开
收起
a123456678 2016-07-18 14:05:44 3094 分享 版权
1 条回答
写回答
取消 提交回答
  • INSERT OR REPLACE INTO SearchTable(Owner, Generations) SELECT 5, MIN(3, COALESCE(Generations, 999)) FROM SearchTable WHERE Owner = 5

    2019-07-17 19:57:48
    赞同 展开评论
问答分类:
问答标签:
问答地址: