我有一个问题:
在我的SQLite(安卓系统上的sqlite3)数据库中,我有一个类似的表
company | name | job
--------------------------
1 | 'Peter' | 'Manager'
1 | 'Jim' | (null)
2 | 'John' | 'CEO'
2 | 'Alex' | 'Developer'
3 | 'Lisa' | (null)
我想去
company | formated
--------------------------------------
1 | 'Peter (Manager), Jim'
2 | 'John (CEO), Alex (Developer)'
3 | 'Lisa'
到目前为止,我得到的是
SELECT group_concat(concat) FROM (
SELECT
CASE
WHEN job IS NULL THEN name
ELSE name || ' (' || job || ')'
END AS concat
FROM jobs
)
这给了我一个字符串
'Peter (Manager), Jim, John (CEO), Alex (Developer), Lisa'
虽然这已经很好了,但仍然不是我想要的。在那一点上,我不明白我必须如何把事情结合起来才能得到我想要的。
附带说明:有没有关于complexer查询的好教程?到目前为止,我只找到了一些片段,但没有真正解释如何构建这样的东西
你很接近!
SELECT
company,
group_concat(concat) AS formated
FROM (
SELECT
company,
CASE
WHEN job IS NULL THEN name
ELSE name || ' (' || job || ')'
END AS concat
FROM jobs
)
GROUP BY company