Pull to refresh

Comments 6

UFO just landed and posted this here
За счет того что в первом случае выполнится 2 подзапроса (один для получения emp.ID, а второй для emp.Name) для каждой строки, а в случае APPLY только один (и emp.ID и emp.Name получаются одним подзапросом).

Вот планы обоих запросов:
UFO just landed and posted this here
Спасибо за комментарий!

Да, я знаю, что при помощи APPLY можно вызывать функции, возвращающие TABLE, но и в таком виде их можно иногда использовать. Учебник посвящен именно теме чистого SQL (без применения TSQL) и в большей степени для людей, только начинающих его изучать. Первым делом я пытался донести понимание сути именно базовых конструкций, на них и сделан в первую очередь основной упор – три части посвящено именно им и только один раздел посвящен теме подзапросов, потому что на больших наборах они действительно очень неэффективны.

Я и сам стараюсь как можно реже прибегать к использованию подзапросов, поэтому я написал:
Но я бы рекомендовал в первую очередь всегда пытаться решить задачу стандартными конструкциями оператора SELECT, и, если этого не получается, прибегать к помощи подзапросов.
Замечательная статья, толково! :)
Спасибо!
Можно добавить, разве что, явное сравнение размещения подзапросов во FROM (JOIN) с использованием оных внутри WHERE.
Sign up to leave a comment.

Articles