【问题标题】:join same table columns连接相同的表列
【发布时间】:2013-10-27 12:02:52
【问题描述】:

我正在使用 android SQLite,并尝试合并相同的表数据

我的桌子是这样的:

a  b  c
-------
3  5  0
3  3  0
3  7  1
4  6  0
4  8  1

3  8  7
4  6  8

对于每个 'a',其中 'c'=0 求和 'b' 和其中 'c'=1 求和 'b'。

我尝试了内部连接和更多连接,但没有一个给我正确的答案。

【问题讨论】:

  • 最后一位 0 在哪里求和,最后一位在哪里求和。对于任何误解
  • 对不起,你的问题还不是很清楚。是否要添加最后一个数字相同的列?请同时提供您使用的列的名称。
  • 预期的结果列是: 'a' , (sum('b') where c=0) , (sum('b') where c=1);

标签: sql sqlite android-sqlite


【解决方案1】:

您应该可以使用简单的GROUP BYSUM 来执行此操作,如下所示:

SELECT
    a
,   SUM(CASE c WHEN 0 THEN b ELSE 0 END) as sum_0
,   SUM(CASE c WHEN 1 THEN b ELSE 0 END) as sum_1
FROM myTable
GROUP BY a

Demo on sqlfiddle.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-02
    • 1970-01-01
    • 1970-01-01
    • 2016-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多