我有以下SQLite数据库



如果我进行以下查询,我预计将返回3行结果。

SELECT name, sum(heart) FROM test_table;


但是,即使我没有使用GROUP BY,也仅返回1行。

C:\Users\yan-cheng.cheok\Desktop>sqlite3.exe
SQLite version 3.7.13 2012-06-11 02:05:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .restore abc
sqlite> SELECT name, sum(heart) FROM test_table;
Record3|102


我期待结果:

Record1|102
Record2|102
Record3|102


与常规SQL一样,如果我不使用GROUP BY,则将返回每行。

http://www.w3schools.com/sql/sql_groupby.asp

有什么我可以让所有3行返回的吗?

最佳答案

试试这个你可以使用cross join

SELECT a.name, b.totalHeart
FROM test_table a,
    (
        SELECT SUM(heart) totalHeart
        FROM test_table
    ) b

10-08 07:23