【发布时间】:2015-05-03 04:34:51
【问题描述】:
如果值不存在,我需要一种插入值的方法,如果存在,则应该将该值增加另一个变量。
这是我的桌子的样子:
CREATE TABLE IF NOT EXISTS table(
Id INTEGER PRIMARY KEY,
Date TEXT,
Quantity INTEGER
每当我将日期添加到数据库时,加上我想要的数量,将数量添加到表中的“数量”中。所以每个“日期”只会分配 1 个“数量”。
只是一个小例子:
INSERT INTO Table (Date, Quantity) VALUES('%s', Quantity+%s)) % ('12/5/2013', 20);
如果已经有一条类似 ('12/5/2013', 5) 的记录 应该是 ('12/5/2013', 25)。
我发现了 1 个非常相似的问题,但我不明白,我如何也使整数增加.. Another Question
【问题讨论】:
-
您能否在链接到的答案中具体说明您不理解的内容?
replace or insert听起来很不言自明。coalesce对我来说是新的,但根据文档,它返回传入的第一个非 null 参数,因此如果选择返回 null(因为还没有给定日期的记录),则第二个参数用作后备。在你的情况下,你只是不想要coalesce(SELECT val+1 …, 1),而是像coalesce(SELECT quantity+quantity …, quantitty)sqlite.org/lang_corefunc.html
标签: python sqlite exists not-exists