План выполнения запроса

План выполне́ния запро́са — последовательность операций, необходимых для получения результата SQL-запроса в реляционной СУБД.

План в целом разделяется на две стадии:

  • Выборка результатов;
  • Сортировка и группировка, выполнение агрегаций.

Сортировка и группировка — это опциональная стадия, которая выполняется, если не найдено путей доступа для получения результата в запрошенном порядке.

Выборка результатов выполняется следующими способами:

  • Вложенные циклы;
  • Слияние.

Вложенные циклы

Вложенные циклы — вложенные итеративные процессы поиска данных в каждой из соединяемых таблиц.

Внешний цикл извлекает все необходимые строки из внешней таблицы. Если часть или все ограничения для внешней таблицы могут быть использованы для поиска по индексу, то на каждой итерации цикла в индексе ищутся расположения всех необходимых строк и выполняется прямой доступ к таблице. В противном случае таблица сканируется целиком. Оставшиеся ограничения используются для фильтрации выбранных строк. Для каждой оставшейся строки вызывается внутренний цикл.

Внутренний цикл по условиям соединения и данным внешнего цикла ищет строки во внутренней таблице. Если часть или все ограничения для внутренней таблицы, а также ограничения, полученные от внешнего цикла, могут быть использованы для поиска по индексу, то на каждой итерации цикла в индексе ищутся расположения всех необходимых строк и выполняется прямой доступ к таблице. В противном случае таблица сканируется целиком. Оставшиеся ограничения используются для фильтрации выбранных строк.

Циклы могут вкладываться произвольное число раз. В этом случае внутренний цикл становится внешним для следующего цикла и т. д.

На каждой итерации самого глубокого цикла выбранные из таблиц строки конкатенируются, для получения одной строки итогового результата.

Если для некоторого цикла выполняется поиск по индексу, и всех колонок в индексе достаточно для получения итогового результата, то прямой доступ к таблице в этом цикле не выполняется.

Слияние

Если объединяемые таблицы имеют индексы по сравниваемым полям, то объединение может быть выполнено с помощью слияния. Оба индекса сканируются и в них ищутся одинаковые значения. Если колонок в индексах достаточно для получения итогового результата, то чтение таблиц не выполняется. В противном случае выполняется прямой доступ к сливаемым таблицам для получения колонок, не входящих в индексы, но необходимых для получения результата.

Если слияния недостаточно для получения итогового результата, то для каждой строки, полученной слиянием, может выполняться до двух серий вложенных циклов, соответственно, для каждой из сливаемых таблиц.

За счет того, что в индексах данные отсортированы, слияние дешевле вложенных циклов, но план выполнения не может начинаться со слияния.

Пример

Например, для такого запроса, как:

SELECT *
  FROM Продажи
  ORDER BY Номер_продавца

может быть создан такой план выполнения:

  1. Сканирование кластерного индекса для первичного ключа таблицы Продажи.
  2. Сортировка результатов шага 1 по столбцу Номер_продавца.
  3. Возврат приложению результатов шага 2.

Оптимизатор запросов (компонент СУБД) использует хранящуюся в базе данных вместе с таблицами и индексами статистическую информацию, на основе которой он оценивает альтернативные способы формирования результатов запроса. Например, команду ORDER BY в инструкции SELECT можно выполнить с использованием имеющегося в базе индекса, либо же путём физической сортировки строк. Оптимизатор старается выбрать самый эффективный план выполнения запроса.

Изучение планов выполнения запросов, созданных оптимизатором, позволяет решить, как ускорить выполнение запроса — изменить сам запрос или создать в базе данных дополнительный индекс. Некоторые СУБД позволяют явно влиять на то, как именно оптимизатор формирует план, для чего имеется особый язык подсказок.

См. также

Литература

Ссылки

Read other articles:

Acanthodii Periode Early Silurian–Permian PreЄ Є O S D C P T J K Pg N Nerepisacanthus, sebuah Acanthodii dari periode SilurTaksonomiSuperkerajaanEukaryotaKerajaanAnimaliaFilumChordataKelasAcanthodii Owen, 1846 Ordo Acanthodiformes Climatiiformes (paraphyletic) Climatiidae Diplacanthiformes Gyracanthidae Ischnacanthiformes lbs Acanthodii (terkadang disebut dengan hiu berduri) adalah sebuah kelas dari ikan yang sudah punah, yang memiliki karakteristik tubuh gabungan dari ikan bertulang (Ost...

 

 

Ronald D. SugarLahir1948Toronto, Ontario, KanadaKebangsaanAlmamaterUCLAPekerjaanPebisnisKetua & CEO Northrop Grumman (2003-2010)PendahuluKent KresaPartai politikRepublikAnggota dewanChevron Corp. (2005-), Apple Inc. (2010-)Suami/istriValerie SugarAnak2 Ronald D. Sugar (lahir 1948) adalah mantan ketua dewan dan CEO Northrop Grumman Corporation, perusahaan pertahanan global, sejak tahun 2003.[1] Pada 16 September 2009, ia mengumumkan akan pensiun dari jabatannya sebagai CEO Northro...

 

 

  Grand Prix Prancis 2017Detail lombaLomba ke 5 dari 18Grand Prix Sepeda Motor musim 2017Tanggal21 Mei 2017Nama resmiHJC Helmets Grand Prix de France[1]LokasiBugatti CircuitSirkuitFasilitas balapan permanen4.185 km (2.600 mi)MotoGPPole positionPembalap Maverick Viñales YamahaCatatan waktu 1:31.994 Putaran tercepatPembalap Maverick Viñales YamahaCatatan waktu 1:32.309 di lap 28 PodiumPertama Maverick Viñales YamahaKedua Johann Zarco YamahaKetiga Dani Pedrosa Hond...

artikel ini perlu dirapikan agar memenuhi standar Wikipedia. Tidak ada alasan yang diberikan. Silakan kembangkan artikel ini semampu Anda. Merapikan artikel dapat dilakukan dengan wikifikasi atau membagi artikel ke paragraf-paragraf. Jika sudah dirapikan, silakan hapus templat ini. (Pelajari cara dan kapan saatnya untuk menghapus pesan templat ini) ReadyBoost adalah fitur sistem file Fat32 yang ada di sistem operasi Windows. Fitur ini bisa bekerja dengan menggunakan flash memory, drive USB 2....

 

 

Akrilamida Nama Nama IUPAC prop-2-enamide Penanda Nomor CAS 79-06-1 N Model 3D (JSmol) Gambar interaktif 3DMet {{{3DMet}}} ChemSpider 6331 Nomor EC PubChem CID 6579 Nomor RTECS {{{value}}} CompTox Dashboard (EPA) DTXSID5020027 InChI InChI=1/C3H5NO/c1-2-3(4)5/h2H,1H2,(H2,4,5)Key: HRPVXLWXLXDGHG-UHFFFAOYAS SMILES O=C(\C=C)N Sifat Rumus kimia C3H5NO Massa molar 71,08 g·mol−1 Densitas 1.13 g/cm³ Titik lebur 84.5 °C Titik didih - Kelarutan d...

 

 

فايز غصن مناصب عضو مجلس النواب اللبناني   في المنصب1992  – 2000  وزير الدفاع الوطني   في المنصب13 يونيو 2011  – 15 فبراير 2014  إلياس المر  سمير مقبل  معلومات شخصية الميلاد 28 يونيو 1950  كوسبا  تاريخ الوفاة 22 نوفمبر 2021 (71 سنة) [1]  مواطنة لبنان  عدد الأولا�...

39th (Dorsetshire) Regiment of FootColours of the 39th FootActive1702 to 1881Country Kingdom of England (1702–1707) Kingdom of Great Britain (1707–1800) United Kingdom (1801–1881)Branch British ArmyTypeInfantrySizeOne battalion (2 battalions 1803–1815)Garrison/HQDorchester Barracks, DorchesterNickname(s)Shankey's Horses, The Green Linnets, The FlamersColorsPea Green Facings, Gold Braided LaceEngagementsWar of the Spanish SuccessionWar of the Austrian SuccessionSeve...

 

 

Dutch footballer Tinus van Beurden Tinus van Beurden in 1920Personal informationDate of birth (1893-04-30)30 April 1893Place of birth Tilburg, NetherlandsDate of death 29 May 1950(1950-05-29) (aged 57)Senior career*Years Team Apps (Gls)1910–1926 Willem II 126 (47)International career Netherlands *Club domestic league appearances and goals Tinus van Beurden (30 April 1893 – 29 May 1950) was a Dutch footballer.[1] He played in one match for the Netherlands national football tea...

 

 

Census-designated place in Connecticut, United StatesCandlewood Knolls, ConnecticutCensus-designated place Location within the Western Connecticut Planning Region and the state of ConnecticutCandlewood KnollsShow map of ConnecticutCandlewood KnollsShow map of the United StatesCoordinates: 41°28′45″N 73°27′48″W / 41.47917°N 73.46333°W / 41.47917; -73.46333Country United StatesState ConnecticutCountiesFairfieldRegionWestern CTTownNew FairfieldArea&...

迪奥斯达多·马卡帕加尔Diosdado Pangan Macapagal第9任菲律賓總統任期1961年12月30日—1965年12月30日前任卡洛斯·P·加西亚继任费迪南德·马科斯第6任菲律賓副總統任期1957年12月30日—1961年12月30日前任卡洛斯·P·加西亚继任伊曼纽尔·佩莱斯 个人资料出生(1910-09-28)1910年9月28日 美屬菲律賓馬尼拉逝世1997年4月21日(1997歲—04—21)(86歲) 菲律賓馬卡迪墓地 菲律賓馬卡迪達義市英...

 

 

土库曼斯坦总统土库曼斯坦国徽土库曼斯坦总统旗現任谢尔达尔·别尔德穆哈梅多夫自2022年3月19日官邸阿什哈巴德总统府(Oguzkhan Presidential Palace)機關所在地阿什哈巴德任命者直接选举任期7年,可连选连任首任萨帕尔穆拉特·尼亚佐夫设立1991年10月27日 土库曼斯坦土库曼斯坦政府与政治 国家政府 土库曼斯坦宪法 国旗 国徽 国歌 立法機關(英语:National Council of Turkmenistan) ...

 

 

 烏克蘭總理Прем'єр-міністр України烏克蘭國徽現任杰尼斯·什米加尔自2020年3月4日任命者烏克蘭總統任期總統任命首任維托爾德·福金设立1991年11月后继职位無网站www.kmu.gov.ua/control/en/(英文) 乌克兰 乌克兰政府与政治系列条目 宪法 政府 总统 弗拉基米尔·泽连斯基 總統辦公室 国家安全与国防事务委员会 总统代表(英语:Representatives of the President of Ukraine) 总...

أبو الأحرار محمد محمود الزبيري   معلومات شخصية الميلاد 1 يناير 1910(1910-01-01)حي بستان السلطان في صنعاء الوفاة 1 أبريل 1965 (55 سنة)برط، شمال صنعاء سبب الوفاة اغتيال معالم شارع الزبيري صنعاء جائزة الشهيد محمد محمود الزبيري الجنسية  اليمن اللقب أبو الأحرار الديانة مسلم الحياة ال...

 

 

City in Illinois, United StatesGriggsvilleCityCity of Griggsville IllinoisDowntown GriggsvilleMotto: The Bird CityLocation of Griggsville in Pike County, Illinois.Location of Illinois in the United StatesCoordinates: 39°42′32″N 90°43′28″W / 39.70889°N 90.72444°W / 39.70889; -90.72444[1]CountryUnited StatesStateIllinoisCountyPikeArea[2] • Total1.11 sq mi (2.86 km2) • Land1.11 sq mi (2.86&...

 

 

Comacina redirects here. For the minor planet, see 489 Comacina. Isola Comacina Isola Comacina is a small wooded island of Italy’s Lake Como, administratively a part of the commune of Ossuccio. It is located close to the western shore of the Como arm of the lake in front of a gulf known as Zoca de l'oli, a Lombard name referring to the local small-scale production of olive oil. In the late 6th century (c. 587) the island was a remaining Roman stronghold under Francio, a subordinate of Narse...

Pour les articles homonymes, voir Bové. José Bové José Bové en 2009. Fonctions Député européen 14 juillet 2009 – 1er juillet 2019(9 ans, 11 mois et 17 jours) Élection 7 juin 2009 Réélection 25 mai 2014 Circonscription Sud-Ouest (France) Législature 7e et 8e Groupe politique Verts/ALE Vice-président de la Commission de l'agriculture et du développement rural du Parlement européen 20 juillet 2009 – 30 juin 2014(4 ans, 11 mois et 10 jours) Prési...

 

 

American rock band For other uses, see The Velvet Underground (disambiguation). The Velvet UndergroundThe Velvet Underground and Nico in 1966Clockwise from top left: Lou Reed, Sterling Morrison, John Cale, Moe Tucker and NicoBackground informationAlso known as The Warlocks The Falling Spikes OriginNew York City, New York, U.S.GenresArt rock[1]proto-punk[2]experimental rock[3]Years active1964–197319901992–19931996LabelsVerveAtlanticPolydorMGMMercuryCotillionSpinoff ...

 

 

American ambassador and diplomat Brian W. ShukanUnited States Ambassador to Benin IncumbentAssumed office May 5, 2022PresidentJoe BidenPreceded byPatricia MahoneyCharge d’Affaires ad interim to SudanIn officeOctober 2019 – January 2022PresidentDonald TrumpJoe BidenPreceded bySteven KoutsisSucceeded byLucy Tamlyn Personal detailsAlma materUniversity of WisconsinNaval War CollegeWashington University in St. Louis Brian Wesley Shukan[1] is a career member of the Senior F...

此条目也许具备关注度,但需要可靠的来源来加以彰显。(2023年3月3日)请协助補充可靠来源以改善这篇条目。 太平通寶(976年-984年)是宋太宗趙光義於太平兴国年間(976-984年)所鑄造的年號錢。 宋朝开宝九年(976年)農曆十月,宋太祖趙匡胤突然駕崩,其弟趙光義即位,趙光義改年號為太平興國,所鑄的年號錢是北宋經濟最好的時候。 查论编宋遼金夏貨幣宋朝货币北宋 宋...

 

 

ابن الوردي عمر بن المظفَّر المعرّي معلومات شخصية الميلاد 691هـ/1292ممعرة النعمان، بلاد الشام،  السلطنة المملوكية الوفاة 749هـ/1349محلب، بلاد الشام،  السلطنة المملوكية سبب الوفاة الطاعون المذهب الفقهي شافعية الحياة العملية العصر الدولة المملوكية المهنة جغرافي،  وشاعر،...