【发布时间】:2011-11-22 16:18:08
【问题描述】:
假设我有两张桌子:
album
album_id
album_name
和
song
album_id
song_name
track_number
我想创建一个 SQL 查询,给定一个album_id,它将在一个字段中返回album_name,并在一个逗号分隔列表中返回所有song_names,在另一个字段中按track_number 排序字段。
最终结果将是一行两列的游标:
album_name : "一些专辑名称"
歌曲:“歌曲 1、歌曲 2、歌曲 3、歌曲 4”
我想我需要这样的东西:
SELECT a.*, group_concat(s.name ORDERBY s.track_number SEPERATOR ', ')
FROM album a
LEFT JOIN songs s
WHERE (a.album_id=1)
这是错误的,但我认为我的思路是正确的
这可以在 Android 上的 sqlite3 中实现吗?你能告诉我怎么做吗?
** 编辑 ** 继 ypercube 的出色答案(有效)之后,有没有办法添加另一个字段,就像歌曲一样,但我们称它为音乐家。
所以新表是
musician
album_id
musician_name
musician_number
我的光标现在会给我一个结果:
album_name : "一些专辑名称"
歌曲:“歌曲 1、歌曲 2、歌曲 3、歌曲 4”
音乐家:“音乐家1,音乐家2,音乐家3”
按音乐家编号排序的音乐家值?
【问题讨论】: