Вход на сайт
SQL
715 просмотров
Перейти к просмотру всей ветки
в ответ Murr 02.06.11 15:53
Задачка к теме. Это действительно так, или я чего то не знаю..
Есть скрипт с саб-запросами. Показался громоздко, переделал под INNER JOIN.
Как я знаю, под-запросы выполняються медленее. Но в этом случае все наоборот.
-- 0.7 сек.
SELECT Id, Name, Workability,
(SELECT Id, Name, Workability,
(SELECT Id, Name, Workability
FROM ProductItem item
WHERE (sub.Id = item.SubCategoriesId))
FROM SubCategories sub
WHERE (sub.CategoriesId = cat.Id))
FROM Categories cat
-----------------------------
-- 4 сек. иссец..
SELECT cat.Id, cat.Name,cat.Workability,
sub.Id, sub.Name, sub.Workability,
item.Id, item.Name, item.Workability
FROM Categories cat
JOIN SubCategories sub on cat.Id = sub.CategoriesId
JOIN ProductItem item on sub.Id = item.SubCategoriesId
Есть какие-нить предположения?
Есть скрипт с саб-запросами. Показался громоздко, переделал под INNER JOIN.
Как я знаю, под-запросы выполняються медленее. Но в этом случае все наоборот.
-- 0.7 сек.
SELECT Id, Name, Workability,
(SELECT Id, Name, Workability,
(SELECT Id, Name, Workability
FROM ProductItem item
WHERE (sub.Id = item.SubCategoriesId))
FROM SubCategories sub
WHERE (sub.CategoriesId = cat.Id))
FROM Categories cat
-----------------------------
-- 4 сек. иссец..
SELECT cat.Id, cat.Name,cat.Workability,
sub.Id, sub.Name, sub.Workability,
item.Id, item.Name, item.Workability
FROM Categories cat
JOIN SubCategories sub on cat.Id = sub.CategoriesId
JOIN ProductItem item on sub.Id = item.SubCategoriesId
Есть какие-нить предположения?