一个。
SELECT *
FROM `photo`
INNER JOIN `photo_comment`
ON `photo`.id = `photo_comment`.photo_id
LIMIT 0,2B.
SELECT *
FROM (SELECT * FROM `photo_comment`) AS T,`photo`
WHERE T.photo_id = `photo`.id
LIMIT 0,2结果表明,C.
SELECT *
FROM `photo_comment`,`photo`
WHERE `photo`.id=`photo_comment`.photo_id
LIMIT 0,2以下查询之间的区别是什么。哪种方式是最有效的执行方式?
提前感谢您的帮助和启发。
发布于 2012-10-22 19:26:47
第一个查询和第三个查询是相同的。第一个查询使用ANSI SQL-92格式,而第三个查询(旧查询)使用SQL-89格式。
第二个查询比较慢(但不是完全慢),因为它首先扫描photo_comment并将其与另一个表联接。
发布于 2012-10-22 19:24:39
第一个和第三个查询是相似的。第二个是最慢的,因为使用临时表来存储内部select的结果。
https://stackoverflow.com/questions/13010385
复制相似问题