你能帮帮我吗?我有这个 SQL 查询:
SELECT l.url
FROM (b INNER JOIN links ON b.parent_id = l.id)
INNER JOIN b ON l.id = b.link
WHERE l.url LIKE 'http://domain%' LIMIT 0, 30
它以某种方式说
#1066 - Not unique table/alias: b
您似乎从同一张表中选择了两次。这些事件中的每一个都需要自己的别名:
SELECT
l.url
FROM
b as b1 /* <-- */
INNER JOIN links as l
ON b1.parent_id = l.id
INNER JOIN b as b2 /* <-- */
ON l.id = b2.link
WHERE l.url LIKE 'http://domain%' LIMIT 0, 30
请注意,我还l
为links
表添加了缺少的别名。
SELECT l.url from b inner join links as l on l.id = l.parent_id
inner join b as b1 on b1.link = l.id
where l.url like 'http:domain%' limit 0,30
在此查询中,我们将两个表第一个 b 和第二个链接连接起来,并将 b 作为 b1 别名进行自我连接 ok