0

我想编写一个 sqlite 查询,其中将显示一条记录,例如我有一个联系人表和帐户表我想从表中获取一个帐户名称和联系人姓名我想 group_concat 联系人姓名,它不应该重复所以我返回一个查询:

select a.account_name, group_concat(DISTINCT c.contact_name) from account_table a join contact_table c on a.account_id = c.account_id;

这个查询执行完全知道我想要做的是按 asc 顺序获取 group_concat 不同的名称,所以我编写了查询:

 select a.account_name, group_concat(DISTINCT c.contact_name order by c.contact_name) from account_table a join contact_table c on a.account_id = c.account_id;

它按顺序给了我错误

10-25 10:29:25.601: E/SQLiteLog(2214): (1) near "order": syntax error

谁能告诉我如何解决这个错误。

4

1 回答 1

0

您不能ORDER BY在聚合函数调用中使用子句。

尝试:

select a.account_name, group_concat(DISTINCT c.contact_name)
from account_table a
join contact_table c on a.account_id = c.account_id
order by c.contact_name;
于 2013-10-25T10:55:17.503 回答