Sql 与联接图的其余部分断开连接

Sql 与联接图的其余部分断开连接,sql,oracle-sqldeveloper,Sql,Oracle Sqldeveloper,在sql developer中编写此查询时: SELECT c.* FROM NAMES a ,CLOTHES b ,DATE c WHERE a.NAME_KEY=b.NAME_KEY AND b.CLOTHE_LABEL LIKE '%A33005%' AND c.CLOTHE_KEY=a.CLOTHE_KEY ORDER BY c.CREATE_DATE; 它不将b作为联接的一部分,并显示以下消息: B与联接图的其余部分断开连接 你知道为什么会这样吗 这与另一个问题不同从查询优化的角度来

在sql developer中编写此查询时:

SELECT c.* FROM NAMES a ,CLOTHES b ,DATE c
WHERE a.NAME_KEY=b.NAME_KEY
AND b.CLOTHE_LABEL LIKE '%A33005%'
AND c.CLOTHE_KEY=a.CLOTHE_KEY
ORDER BY c.CREATE_DATE;
它不将b作为联接的一部分,并显示以下消息:

B与联接图的其余部分断开连接

你知道为什么会这样吗


这与另一个问题不同

从查询优化的角度来看,表的正确顺序也很重要

您的查询必须如下所示

SELECT c.* FROM `DATE` c, CLOTHES b, NAMES a
WHERE c.CLOTHE_KEY=a.CLOTHE_KEY
AND a.NAME_KEY=b.NAME_KEY
AND b.CLOTHE_LABEL LIKE '%A33005%'
ORDER BY c.CREATE_DATE;

从查询优化的角度来看,表的正确顺序也很重要

您的查询必须如下所示

SELECT c.* FROM `DATE` c, CLOTHES b, NAMES a
WHERE c.CLOTHE_KEY=a.CLOTHE_KEY
AND a.NAME_KEY=b.NAME_KEY
AND b.CLOTHE_LABEL LIKE '%A33005%'
ORDER BY c.CREATE_DATE;

这个问题可能与这个问题有关:如果使用显式连接运算符而不是旧的连接运算符,WHERE子句中过时且脆弱的隐式连接?可能会消失,但我想使用这种查询,所以这个问题可能与这个问题有关:如果使用显式连接运算符而不是旧的连接运算符,它会消失吗,WHERE子句中过时且脆弱的隐式联接?可能会消失,但我想使用这种查询'DATE'在SQL中是无效标识符,而Oracle'DATE'在SQL和Oracle中是无效标识符