|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
HumanResources.EmployeeDepartmentHistory As h
WHERE d.DepartmentID = h.DepartmentID AND h.EmployeeID = e.EmployeeID AND h.EndDate IS NOT NULL При использовании этой подсказки соединения OPTION(FORCE ORDER), оптимизатор выполняет операцию соединения в том порядке, в котором таблицы появляются в запросе. USE AdventureWorks; SELECT e.EmployeeID, e.LoginID, d.DepartmentID FROM HumanResources.Employee As e, HumanResources.Department As d, HumanResources.EmployeeDepartmentHistory As h WHERE d.DepartmentID = h.DepartmentID AND h.EmployeeID = e.EmployeeID AND h.EndDate IS NOT NULL OPTION(FORCE ORDER);
Подсказки запроса loop, hash и merge заставляют оптимизатор использовать метод циклического соединения (вложенный цикл), технику хеширования соединений и технику слияния соединений соответственно. Эти три подсказки соединения могут применяться только в том случае, когда операция соединения соответствует стандарту SQL, т. е. когда соединение явно указано при помощи ключевого слова join в предложении from оператора select.
Пример: USE AdventureWorks; SELECT * FROM Person.Address a JOIN Person.StateProvince s ON a.StateProvinceID = s.StateProvinceID
План выполнения запроса: используется техника хеширования соединений (Hash Match)
Пример: используется подсказка OPTION (MERGE JOIN) использовать технику слияния соединений USE AdventureWorks; SELECT * FROM Person.Address a JOIN Person.StateProvince s ON a.StateProvinceID = s.StateProvinceID OPTION (MERGE JOIN);
План выполнения запроса: показывает использование подсказки - метод слияния соединений (MERGE JOIN). Выбранная подсказка соединения может быть записана в предложении FROMзапроса или при использовании предложения option в конце этого запроса. Если нужно применять несколько различныхподсказок вместе, то рекомендуется предложение option. Пример: идентичен предыдущему, но в нем подсказка соединения указана в предложении from запроса. USE AdventureWorks; SELECT * FROM Person.Address a INNER MERGE JOIN Person.StateProvince s Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |