【发布时间】:2022-08-03 20:59:11
【问题描述】:
我有一张笔记表和一张标签表。它们通过附加表连接。每个笔记可以有多个标签,每个标签可以有多个笔记。它看起来像这样:
我无法弄清楚如何正确编写查询。
请帮我获取一张便条的所有标签。 (选择 * FROM 标签...)
标签: sql postgresql
我有一张笔记表和一张标签表。它们通过附加表连接。每个笔记可以有多个标签,每个标签可以有多个笔记。它看起来像这样:
我无法弄清楚如何正确编写查询。
请帮我获取一张便条的所有标签。 (选择 * FROM 标签...)
标签: sql postgresql
您只需要加入表格:
SELECT *
FROM notes n
LEFT OUTER JOIN notes_tags nt
ON n.note_id = nt.note_id
LEFT OUTER JOIN tags t
ON nt.tag_id = t.tag_d
WHERE n.note_id = <some note you are interested in>
使用 LEFT OUTER JOIN 因为我怀疑某些笔记可能有 0 个标签。这仍然会吐出便笺记录,但行中没有标签信息。
【讨论】: