【发布时间】:2021-12-27 08:35:40
【问题描述】:
我正在尝试加入 tags.url = urls.url,但问题出在我的查询中,我得到的标签在 urls 表中没有相同的 url。
这修复了它添加了一个 WHERE 子句,以确保两者中的 url 相同..但我不相信这是在 SQL 中执行 JOIN 的正确方法:
SELECT urls.*, tags.tag FROM urls LEFT JOIN tags ON urls.url = tags.url WHERE tags.tag = ? AND tags.url = urls.url ORDER BY created_at DESC LIMIT 50
我正在使用 sqlite。
如果我不使用AND tags.url = urls.url,那么我会得到与标签 where 子句匹配的标签,但 urls 在连接中不匹配。
【问题讨论】:
-
如果您只想要表的匹配行,那么您应该进行内部联接。