Sqlite &引用;组“CONCAT()”;通过外键访问多个列

Sqlite &引用;组“CONCAT()”;通过外键访问多个列,sqlite,Sqlite,我有下列表格 书桌 id title authors 3 Linux id标题作者 3 Linux 作者表 id firstname lastname fk 1 name name 3 2 name2 name 3 id firstname lastname fk 1姓名3 2姓名2姓名3 我想使用GROUP_CONCAT()查询authors表以填充authors列,类似于此表 id标题作者 3

我有下列表格

书桌

id title authors 3 Linux id标题作者 3 Linux 作者表

id firstname lastname fk 1 name name 3 2 name2 name 3 id firstname lastname fk 1姓名3 2姓名2姓名3 我想使用GROUP_CONCAT()查询authors表以填充authors列,类似于此表

id标题作者 3 Linux名称|名称2名称2
对于您知道其ID的一本书,您可以将作者列表作为单个值获取,如下所示:

SELECT group_concat(firstname || ' ' || lastname)
FROM authors
WHERE fk = ?;
在实际查询中,只需将其用作

SELECT id,
       title,
       (SELECT group_concat(firstname || ' ' || lastname, ' | ')
        FROM authors
        WHERE fk = book.id
       ) AS authors
FROM book;

非常感谢,这很有帮助
SELECT id,
       title,
       (SELECT group_concat(firstname || ' ' || lastname, ' | ')
        FROM authors
        WHERE fk = book.id
       ) AS authors
FROM book;