下面的SQL语句中,子查询中出现了上层查询的表的别名AA。
请问,如何改写才能查询到同样的结果而且让子查询中不出现AA?SELECT AA.column1, AA.column2, AA.column3, AA.column4
FROM T_table1 AA
WHERE AA.column5 = '0'
AND AA.column1 = 'cln1'
AND 'abc' = (SELECT DISTINCT BB.column4
FROM T_table2 BB
WHERE BB.column1 = AA.column1
AND BB.column2 = AA.column2
AND BB.column3 = '0');
请问,如何改写才能查询到同样的结果而且让子查询中不出现AA?SELECT AA.column1, AA.column2, AA.column3, AA.column4
FROM T_table1 AA
WHERE AA.column5 = '0'
AND AA.column1 = 'cln1'
AND 'abc' = (SELECT DISTINCT BB.column4
FROM T_table2 BB
WHERE BB.column1 = AA.column1
AND BB.column2 = AA.column2
AND BB.column3 = '0');
FROM T_table1 AA ,T_table2 BB
WHERE AA.column5 = '0'
AND AA.column1 = 'cln1'
and BB.column1 = AA.column1
and BB.column2 = AA.column2
AND BB.column3 = '0'
and BB.column4 = 'abc'
where column5 = '0' and column1 = 'cln1' and exists
(select 'abc' from T_table2 where column1=a.column1 and
column2 = a.column2 and column3 = '0' and column4='abc')