我有一个名为posts
的SQLite表。一个例子如下所示。我想计算每月的收入和支出。我可以将两个SQLite SELECT语句合并为一个吗?
accId date text amount balance ---------- ---------- ------------------------ ---------- ---------- 1 2008-03-25 Ex1 -64.9 3747.56 1 2008-03-25 Shop2 -91.85 3655.71 1 2008-03-26 Benny's -100.0 3555.71
对于收入我有这个疑问:
SELECT SUBSTR(date, 0,7) "month", total(amount) "income" FROM posts WHERE amount > 0 GROUP BY month ORDER BY date;
它工作正常:
month income ---------- ---------- 2007-05 4877.0 2007-06 8750.5 2007-07 8471.0 2007-08 5503.0
现在我所需要的费用,我可能导致的重复刚才的第一个语句与条件amount < 0
,但我想知道是否有一个优雅的方式来在一个查询中获得收入和支出?
谢谢,如果在CASE语句中增加END,这也会起作用。 – tiktuk 2009-06-25 02:15:39
是的,在SQLite中,你必须结束你的CASE语句 - (当金额> 0那么金额ELSE 0 END时) – 2009-06-25 02:23:36