SQL statement INNER JOIN: примери, синтаксис и функции
Разработването на всяка база данни предполага не само създаването и попълването на таблици с разнообразна информация, но и по-нататъшната работа с данните. За правилното изпълнение на различни задачи за избиране на данни от таблици и генериране на отчети се използва стандартната конструкция Избор.
съдържание
- Данните извличат от таблици
- Начини за свързване на допълнителни таблици
- Комбиниране на данни в таблици по ред
- Описание на оператора Вътрешна връзка
- Синтаксис на вътрешния оператор
- Пример и описание на връзката към избор на една таблица
- Пример за свързване на две таблици и подзаявка
- Пример за използване на оператора inner join за избор от голям брой таблици
- заключение
Данните извличат от таблици
Ако разглеждате задачата за избиране на данни или за изграждане на конкретен отчет, можете да определите степента на сложност на тази операция. Като правило, когато става дума за сериозен (според обем) бази данни, които се образуват, например, в онлайн магазини или големи фирми, избор на данни не се ограничава до една таблица. Като правило, пробата може да бъде от относително голям брой не само свързани таблици, но и вложени заявки / под-заявки, което прави програмист, в зависимост от задачата си. За вземане на проби от една таблица можете да използвате най-простия дизайн:
Изберете * от Лице |
където Личността е името на таблицата, от която да изберете данните.
Ако е необходимо да изберете данни от няколко таблици, можете да използвате един от стандартните дизайни, за да комбинирате няколко таблици.
Начини за свързване на допълнителни таблици
Ако разгледаме използването на такива структури на първоначално ниво, тогава можем да различим следните механизми за свързване на необходимия брой таблици за извадката, а именно:
- Вътрешно присъединяване към оператора.
- Left Join или, това е вторият начин за запис, Left Out Join.
- Кръстосайте се.
- Пълен присъединяване.
Използването на таблиците за оператори на операционни системи на практика може да се установи като се обмисли използването на оператора SQL - Inner Join. Пример за неговата употреба ще изглежда така:
Изберете * от Лице Вътрешно подразделение се присъединява към Su_Person = Pe_ID |
Език SQL и присъединяване Вътрешна присъединяване оператор може да се използва не само за комбиниране на две или повече маси, но и за да се свържете с други под-заявки, което значително улеснява работата на администраторите на бази данни, както и, като правило, може значително да се ускори изпълнението на специфични, сложни структури на заявката.
Комбиниране на данни в таблици по ред
Ако смятате да свържете голям брой подчинености и да сглобите данни в една таблица ред по ред, можете да използвате и операторите на Съюза и всички съюзници.
Прилагането на тези проекти ще зависи от задачата, възложена на разработчика и резултата, който той иска да постигне в крайна сметка.
Описание на оператора Вътрешна връзка
В повечето случаи използвате вътрешния оператор, за да се присъедините към няколко таблици в SQL. Описанието на Inner Join в SQL е доста проста за средния програмист, който трябва да се разбере, което едва започва да разбира базите данни. Ако разгледаме описанието на механизма на работа на тази конструкция, получаваме следната картина. Логиката на оператора като цяло се основава на възможността за пресичане и вземане на проби само на данните, които съществуват във всяка от таблиците, влизащи в заявката.
Ако се вгледаме в този вид работа от гледна точка на графичен тълкуване, ние получаваме SQL Вътрешна присъединяване структура оператор, пример за което може да бъде показано по следната схема:
Например имаме две таблици, чиято диаграма е показана на фигурата. Те, от своя страна, имат различен брой записи. Във всяка от таблиците има полета, които са свързани помежду си. Ако се опитате да обясните работата на оператора въз основа на фигурата, връщаният резултат ще бъде под формата на набор от записи от две таблици, където броят на свързаните с тях полета съвпада. Просто казано, заявката ще върне само тези записи (от таблица номер две), данните за които са в таблицата номер едно.
Синтаксис на вътрешния оператор
Както вече споменахме, операторът Inner Join, а именно неговият синтаксис, е изключително прост. За организацията на връзките между таблиците в една и съща проба, ще е достатъчно да се помни и се използва следната схема на конструкцията на оператора, което е предписано в една линия на софтуера SQL-код, а именно:
- Вътрешна връзка [Име на таблицата] в [ключовото поле от таблицата, към която се свързваме] = [Ключово поле на свързаната таблица].
За комуникация в този оператор се използват основните клавиши на таблиците. Като правило в групата от таблици, в които се съхранява информация за служителите, описаните по-рано лица и подразделения имат най-малко един подобен запис. Така че, нека да разгледаме по-отблизо изявлението SQL Inner Join, чийто пример беше показан малко по-рано.
Пример и описание на връзката към избор на една таблица
Имаме таблица "Лица", която съхранява информация за всички служители, работещи в компанията. Само забележете, че основният ключ на тази таблица е полето - Pe_ID. Само на него и ще има куп.
Втората таблица на подразделението ще съхранява информация за отделите, в които работят служителите. То от своя страна е свързано с помощта на полето Su_Person с таблицата "Лице". Какво казва? Въз основа на схемата за данни можете да кажете, че таблицата на отделите за всяко вписване в таблицата "Служители" ще съдържа информация за отдела, в който работят. За тази връзка операторът Inner Join ще работи.
За по-разбираема употреба, помислете за SQL Inner Join изявление (примери за неговата употреба за една и две таблици). Ако разгледаме пример за една таблица, всичко е съвсем просто:
Изберете * от Лице Вътрешно подразделение се присъединява към Su_Person = Pe_ID |
Пример за свързване на две таблици и подзаявка
Операторът SQL Inner Join, чиито примери за използване за извличане на данни от няколко таблици може да бъде организиран по горепосочения начин, работи върху малко по-сложен принцип. За две маси усложняваме проблема. Например, имаме таблицата за отклонения, която съхранява информация за всички отдели във всеки отдел. В тази таблица се записват номерът на отдела и номерът на служителя, а пробата с данни трябва да бъде допълнена с името на всеки отделен отдел. С поглед напред, струва си да се каже, че могат да се използват два метода за решаване на този проблем.
Първият начин е да свържете отделната таблица с извадката. В този случай можете да организирате заявката по следния начин:
Изберете Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name от Лице Вътрешно подразделение се присъединява към Su_Person = Pe_ID Вътрешна връзка Заминаване на Su_Depart = Dep_ID и Pe_Depart = Dep_ID |
Вторият метод за решаване на проблема - е да се използва подзаявка, в които не всички данни ще бъдат избрани от таблицата отдел, но само необходимото. Това, за разлика от първия метод, ще намали времето за заявка.
Изберете Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name от Лице Вътрешно подразделение се присъединява към Su_Person = Pe_ID Вътрешна присъединят (Изберете Dep_ID, Dep_Name, Pe_Depart от Идете) като T на Su_Depart = Dep_ID и Pe_Depart = Dep_ID |
Трябва да се отбележи, че такъв дизайн не винаги може да ускори заявката. Понякога има случаи, когато е необходимо да се използва допълнително вземане на проби от данни в временната таблица (ако обемът им е твърде голям) и след това се комбинира с основната проба.
Пример за използване на оператора Inner Join за избор от голям брой таблици
Изграждането на сложни заявки включва използването на значителен брой свързани помежду си таблици и подчинености за извличане на данни. Тези изисквания могат да задоволят синтаксиса на SQL Inner Join. Примери за използването на оператора в този случай могат да бъдат усложнени не само от проби от много места за съхранение на данни, но и от голям брой вложени подчинености. За конкретен пример можете да вземете извадка от данни от системни таблици (Inner Join SQL оператор). Пример - 3 таблици - в този случай ще има доста сложна структура.
В този случай се добавят още три (към главната таблица) и се въвеждат няколко условия за избор на данни.
Когато използвате оператора Inner Join, помнете, че колкото по-сложна е заявката, толкова по-дълго ще бъде приложена, затова си струва да потърсите начини за по-бързо изпълнение и решаване на задачата.
заключение
В крайна сметка, аз бих искал да кажа едно нещо: да работи с бази данни - това не е най-трудното нещо в програмирането, така че ако искате всеки един човек ще бъде в състояние да придобият знания за изграждане на база данни, и с течение на времето, се натрупа опит, можете да работите с тях на професионално ниво ,
- Разпределени бази данни
- База данни за нормализиране
- SQL файл. SQL файлов формат: описание на разширението
- MySQL е какво и къде се прилага?
- Създаването на MySQL база данни е част от всеки сайт
- Как да съставя SQL заявки - подробни примери
- DB е ... Типове и свойства на базата данни
- MySQL - искане в заявката. MySQL: примери за заявки. Вложени заявки за MySQL
- SQL Къде: методи на прилагане и примери
- MySQL JOIN: описание, пример за използване на командата и препоръки
- MS Access. Бази данни от MS Access. MS Access 2007
- SQL заявката е какво?
- Създаване на заявки в Access. Видове искания
- Изтриване на изявление Изтриване на MySQL
- Изтриване на MySQL дубликати
- Релационен модел на данни, бази данни, модели и схеми за проектиране
- Групиране на записите в MySQL: групиране по
- Как да създадете заявки в Access: стъпка по стъпка инструкции и препоръки
- Подробности за свързването на таблици за достъп
- Какви видове бази данни съществуват днес?
- Общи понятия на DBMS за достъп