假设有两个表:
students (student_id INT, class_id INT);
instructors (instructor_id INT, class_id INT);这两者之间是否存在性能差异:
SELECT * FROM
students INNER JOIN instructors USING (class_id);
SELECT * FROM
student INNER JOIN instructors ON students.class_id = instructors.class_id;发布于 2013-09-27 05:07:12
我想说的是,通常不会有性能损失,而我更喜欢第一个,因为它更敏锐。或者甚至是:
SELECT * FROM
students NATURAL INNER JOIN instructors;一如既往,explain和常识是你完美的指南。在某些情况下,NATURAL并不是您想要的,因为它会自动选择同名的所有字段。在某些情况下,USING不会涵盖您的加入规则。我个人尽量少写代码,使其可读性尽可能好。像NATURAL或USING这样的东西只是一个语法糖,它使我的代码更具可读性。
https://stackoverflow.com/questions/19038356
复制相似问题