原始代码示例:
SELECT t1.col1, t2.col2, SUM(t3.col3) FROM table1 t1 JOIN table2 t2 ON t1.id = t2.id JOIN table3 t3 ON t2.id = t3.id GROUP BY t1.col1, t2.col2
改写后的代码示例:
SELECT t1.col1, t2.col2, SUM(t3.col3) FROM table1 t1 INNER JOIN table2 t2 ON t1.id = t2.id INNER JOIN table3 t3 ON t2.id = t3.id GROUP BY t1.col1, t2.col2
改写方法说明:
原始代码使用了两个JOIN,这会导致输出结果的乘积及多余的重复行。改写方法使用了INNER JOIN,从而避免了产生大量重复的行。