muzruno.com

Основни SQL изрази

Стандартът на SQL език е приет през 1992 г. и все още се използва. Той беше този, който стана стандарт за мнозина системи за управление на бази данни.

Разбира се, някои производители използват интерпретацията на стандарта. Но във всяка система съществуват основните компоненти - SQL изрази.

въведение

Използвайки SQL изрази в бази данни, той управлява стойностите, таблиците и ги извлича за по-нататъшен анализ и показване. Те са набор от ключови думи, за които системата разбира какво да прави с данните.

sql изявления

Дефинирайте няколко категории SQL изрази:

  • дефиниране на обекти на базата данни;
  • манипулиране на стойността;
  • защита и управление;
  • параметри на сесията;
  • информация за базата;
  • статичен SQL;
  • динамичен SQL.

SQL изрази за манипулиране на данни

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

операторите на SQL заявки

INSERT. Вмъква редове в съществуваща таблица. Може да се използва за една или няколко стойности, определени от определено условие. Например:

ВЪВЕЖДАНЕ В

име на таблица (име на колона 1, име на колона 2)

Стойности (стойност 1, стойност 2).

За да използвате оператора SQL заявка INSERT за няколко стойности се използва следният синтаксис:

ВЪВЕЖДАНЕ В

име на таблица 1 (име на колона 1, име на колона 2)

SELECT име на колона 1, име на колона 2

От името на таблицата 2

WHERE име на таблицата 2. име на колона 1> 2

Тази заявка ще избере всички данни от таблица 2, които са по-големи от 2 от колона 1 и ще ги вмъкне в първата.

UPDATE. Както предполага името, този оператор на SQL заявки актуализира данните в съществуваща таблица за специфична характеристика.

например:

Името на таблицата UPDATE 1

SET колона 2 = "Basil"

WHERE име на таблицата 1. име на колона 1 = 1

Тази конструкция ще запълни стойността на Базил с всички линии, в които той се натъкне на номер 1 в първата колона.

Изтриете. Премахва данните от таблицата. Можете да зададете условие или да премахнете всички редове.

DELETE FROM име на таблицата

WHERE име на таблицата. Име на колона 1 = 1

Горната заявка ще премахне всички данни от базата данни със стойност от една в първата колона. И ето как можете да изчистите цялата маса:

DELETE от името на таблицата.

Освен това е необходимо да се разкаже за оператора SELECT. Той е един от най-важните, така че ще трябва да отдели отделна глава.

SELECT израз

Основната цел на SELECT е да извлича данни за определени условия. Резултатът от неговата работа е винаги нова таблица с избраните данни. Оператор на MS SQL SELECT може да се използва в множество различни искания. Следователно заедно с него можете да разгледате други свързани ключови думи.

За да изберете всички данни от определена таблица, използвайте знака "*".

SELECT *

От таблицата име 1

Резултатът от тази заявка ще бъде точно копие на таблица 1.

И тук пробата се взима при условие на WHERE, което отклонява от таблица 1 всички стойности, по-големи от 2 в колона 1.

SELECT *

От таблицата име 1

WHERE име на таблицата 1. име на колона 1> 2

Можете също да посочите в селекцията, че са необходими само определени колони.

SELECT име на таблица 1. име на колона 1

От таблицата име 1

Резултатът от тази заявка ще бъде всички редове със стойности от колона 1. Използвайки MS SQL изрази, можете да създадете своя собствена таблица, да я замените в движение, да изчислявате и замествате определени стойности.

ms msl изявления

SELECT

име на таблица 1. име на колона 1

име на таблица 1. име на колона 2

име на таблица 1. име на колона 3

"=» AS EQ

име на таблица 1. име на колона 2 * име на таблица 1. име на колона 3 AS SUMMA

От таблицата име 1

Тази привидно сложна заявка извлича всички стойности от таблица 1, след това създава нови колони на EQ и SUMMA. Първият поставя знака "+" във втория продукт на данните от колони 2 и 3. Резултатът може да бъде представен под формата на таблица, за да се разбере как работи:

Колона 1

Колона 2

Колона 3

EQ

SUMMA

Наименование на продукта 1

10

50

+

500

Наименование на продукта 2

15

100

+

1500

Когато използвате инструкцията SELECT, можете веднага да подредите данните за всяка характеристика. За да направите това, използвайте думата ORDER BY.

SELECT

име на таблица 1. име на колона 1

име на таблица 1. име на колона 2

име на таблица 1. име на колона 3

От таблицата име 1

ORDER BY име на колона 2

Получената таблица ще изглежда така:

Колона 1

Колона 2

Колона 3

1

1

54

3

2

12

7

3

100

2

5

1

Тоест, всички редове са зададени в този ред, така че в колона 2 стойностите се издигат във възходящ ред.

Данните могат да бъдат получени и от няколко таблици. За по-голяма яснота първо трябва да си представите, че има две от тях в базата данни, приблизително следното:

Таблица на служителите

номер

име

Фамилно име

1

Вася

Васин

2

Петя

Petin

Таблица "Заплата"

номер

скорост

кредитира с

1

1

10000

2

0.5

3500

Сега трябва да свържете по някакъв начин тези две таблици, за да получите общи ценности. Като използвате основните SQL изрази, можете да направите това:

SELECT

Брой служители

Име на служителите

Zarplata.Stavka

Zarplata.Nachisleno

От служители, Заплата

КЪДЕТО Служители. Номер = Заплата. Номер

Тук има селекция от две различни таблици със стойности, обединени по брой. Резултатът е следният набор от данни:

номер

име

скорост

кредитира с

1

Вася

1

10000

2

Петя

0.5

3500

Още малко за SELECT. Използване на съвкупни функции

Един от основните изрази SQL SELECT може да извърши някои изчисления в извадката. За да направи това, той използва определени функции и формули.

основни sql изрази



Например, за да получите броя записи от таблицата "Служители", трябва да използвате заявката:

SELECT COUNT (*) AS N

От служители

Резултатът е таблица с една стойност и колона.

N

2

В заявките можете да използвате функции, които изчисляват сумата, максималната и минималната стойност и средната стойност. За това се използват ключовите думи SUM, MAX, MIN, AVG.

Например, трябва да вземете проба от вече известната таблица "Заплата":

номер

скорост

кредитира с

1

1

10000

2

0.5

3500

Можете да приложите тази заявка и да видите какво се случва:

SELECT

SUM (Заплата

MAX (Заплащане.No) AS MAX

MIN (заплата.No) AS MIN

AVG (Заплащане.No) AS SRED

От заплата

Финалната маса ще бъде както следва:

SUMMA

MAX

MIN

SRED

13500

10000

3500

6750

По този начин можете да изберете необходимите стойности от базата данни в движение, като извършите изчисляването на различни функции.

Обединяване, пресичане и различия

Обединяване на няколко заявки в SQL

SELECT Employees.Name

От служители

WHERE Employees.Number = 1

СЪЮЗ

SELECT Employees.Name

От служители, Заплата

WHERE Заплащане.Number = 1

В този случай трябва да се има предвид, че с такава комбинация от таблици трябва да бъде съвместима. Това означава, че има същия брой колони.

Синтаксис на изявлението SELECT и реда на неговото обработване

Първото нещо, което SELECT определя областта, от която ще вземат данни. За тази цел се използва ключовата дума "FROM". Ако не е посочено, какво точно да изберете.

Тогава може да има клауза SQL WHERE. С неговата помощ SELECT преминава през всички редове на таблицата и проверява данните за съответствие със състоянието.

SQL оператори за сравнение

Ако заявката има GROUP BY, стойностите се групират по зададените параметри.

Оператори за сравняване на данни

Има няколко типа. В SQL сравняващите оператори могат да тестват различни типове стойности.

  • "=". Обозначава, както може да предположите, равенството на два израза. Например, тя вече се използва в примерите по-горе - WHERE Заплата. Брой = 1.

  • ">". Знакът е по-голям. Ако стойността на лявата страна на израза е по-голяма, тогава се връща логическата стойност TRUE и условието е изпълнено.

  • "<". Знакът е по-малък. Обърнете предишното изявление.

  • Признаци на "<= "И"> = ". Тя се различава от обикновените оператори все повече и по-малко, тъй като когато операндите са еднакви, условието също ще е вярно.

  • "<> ». Не е равно. Условието ще се счита за истинно само ако един операнд не е равен на друг. Той има още една интерпретация - "! =".

КАТО

Превеждайте тази ключова дума като "подобна". Изразът LIKE в SQL се използва по същия начин - изпълнява заявка на шаблон. Това означава, че ви позволява да разширите избора на данни от базата данни, като използвате регулярни изрази.

като оператор в sql

Например е зададена следната задача: от вече известната база "Служители", за да получите всички хора, чието име завършва в "I". След това заявката може да бъде написана, както следва:

SELECT *

От служители

Където името ми харесва "% I"

Знакът за процента в този случай означава маска, т.е. всеки символ и номерът им. И с буквата "I" SQL ще определи, че последният знак трябва да е точно такъв.

CASE

Този изход на SQL Server е изпълнение с множество избори. Прилича на дизайна на комутаторите на много езици за програмиране. CASE изразът в SQL изпълнява действие при няколко условия.

Например, трябва да изберете максималните и минималните стойности от таблицата "Заплата".

номер

скорост

кредитира с

1

1

10000

2

0.5

3500

След това заявката може да бъде написана, както следва:

SELECT *

От заплата

КЪДЕТО СЛУЧАЙ ПРИ ИЗБОР МАКС (Натрупано) След това Максимум

Когато изберете MIN (натрупани) THEN Минимално

END общо

В този контекст системата търси максималната и минималната стойност в графата "Начислени". След това, с помощта на END, се създава "общо" поле, на което ще се записват "Максимален" или "Минимален", в зависимост от резултата от условието.

Между другото, в SQL има и по-компактна форма CASE - COALESCE.

Определители на данни

Този изглед ви позволява да правите различни промени в таблиците - създаване, изтриване, промяна и работа с индекси.

Първият, който трябва да разгледате, е CREATE TABLE. Тя не прави нищо освен да създаде маса. Ако просто въведете CREATE TABLE, нищо няма да се случи, тъй като все още трябва да уточните няколко параметъра.

Например, за да създадете вече позната таблица "Служители", ще използвате следните команди:

СЪЗДАВАНЕ НА ТАБЛИЦА Служители

(Номер номер (10) НЕ НЕ

Името varchar (50) не е NULL

Фамилно име varchar (50) NOT NULL)

В тази заявка имената на полетата и техните типове са незабавно дефинирани в скоби и също така дали може да е NULL.

ТАБЛИЦА ЗА ДЪРЖАВАНЕ

Изпълнява една проста задача - изтриване на посочената таблица. Има допълнителен параметър, ако има такъв. Той поглъща грешката, когато се изтрие, ако таблицата не съществува. Пример за използване:

ТАБЛИЦА ЗА ПРЕМИНАВАНЕ Служители на АКО съществува.

Създайте ИНДЕКС

SQL има индексна система, която ви позволява да ускорите достъпа до данни. По принцип това е позоваване, което сочи към конкретна колона. Създаването на индекс може да бъде проста заявка:

CREATE ИНДЕКС index_name

ON tbl_name (име на колона)

Този оператор се използва в T-SQL, Oracle, PL SQL и много други интерпретации на технологии.

АЛТЕРНА ТАБЛИЦА

Много функционален оператор с много опции. Като цяло тя прави промяна в структурата, дефинирането и разположението на таблиците. Операторът се използва в Oracle SQL, Postgres и много други.

По-долу ще намерите различни опции за използване на ALTER TABLE.

  • ADD. Добавя колона към таблицата. Синтаксисът е: ALTER TABLE tbl_name ADD колона_интервал data_type_type. Може да има параметър IF IF NOT EXISTS, който потиска грешката, ако създадената колона вече съществува;

  • DROP. Изтрива колоната. Също така има ключ IF EXISTS, без който се генерира грешка, показваща, че липсва необходимата колона;

  • ПРОМЯНА. Кликнете, за да преименувате името на полето в посоченото поле. Пример за ползване: ALTER TABLE tbl_name CHANGE old_name new_name;

  • Модифицирате. Тази команда ще ви помогне да промените вида и допълнителните атрибути на конкретна колона. И се използва по следния начин: ALTER TABLE tbl_name MODIFY name_name name_type_type;

CREATE VIEW

В SQL има такова нещо като представителство. Накратко, това е вид виртуална маса с данни. Той се формира като резултат от вземането на проби с помощта на SQL SELECT инструкцията. Показванията могат да ограничат достъпа до базата данни, да ги скрият, да заменят имената на действителните колони.

t sql изявление

Процесът на създаване се извършва с проста заявка:

CREATE VIEW изглед име AS SELECT FROM * име на таблицата

Пробата може да се появи както в цялата база данни като цяло, така и в някои условия.

Малко за функциите

SQL заявките често използват различни вградени функции, които ви позволяват да взаимодействате с данните и да ги конвертирате в движение. Струва си да ги разгледаме, тъй като те са неразделна част от структурирания език.

  • Брои. Обхваща записи или редове в конкретна таблица. Като параметър можете да посочите името на колоната, след което данните ще бъдат взети от нея. SELECT COUNT * FROM Служители;

  • AVG. Тази функция важи само за колони с цифрови данни. Неговият резултат е определянето на средноаритметичната стойност на всички стойности;

  • MIN и MAX. Тези функции вече са използвани в тази статия. Те определят максималните и минималните стойности от посочената колона;

  • SUM. Това е просто - функцията изчислява сумата на стойностите на колоните. Използва се само за цифров тип данни. Чрез добавяне на DISTINCT към заявката ще бъдат добавени само уникални стойности;

  • КРЪГ. Функция за закръгляване на десетични частични числа. Синтаксисът използва името на графата и броя десетични знаци;

  • ЛЕН. Една проста функция, която изчислява дължината на стойностите на колоните. Резултатът е нова таблица с броя знаци;

  • СЕГА. Тази ключова дума се използва за изчисляване на текущата дата и час.

Допълнителни оператори

Много примери с SQL изрази имат ключови думи, които изпълняват малки задачи, но въпреки това силно опростяват вземането на проби или действията с бази данни.

  • AS. Той се използва, когато визуализирате резултата визуално, като зададете посоченото име на резултантната таблица.

  • МЕЖДУ. Много удобно средство за вземане на проби. Той показва диапазона от стойности, между които искате да извлечете данни. Входът приема параметър от и до кой номер се използва диапазонът.

  • НЕ. Операторът дава обратното на израза.

  • Съкращава. Премахва данните от определена част от базата данни. Тя се различава от подобни оператори, тъй като е невъзможно да се възстановят данните след нейното използване. Трябва да се отбележи, че въвеждането на тази ключова дума в различни интерпретации на SQL може да е различно. Следователно, преди да се опитате да използвате TRUNCATE, е по-добре да се запознаете с референтната информация.

  • LIMIT. Задава броя на линиите, които се извеждат. Особеността на оператора е, че той винаги се намира в края. Това отнема един задължителен параметър и един незадължителен параметър. Първата посочва колко реда трябва да се показват с избраните данни. И ако втората се използва, операторът се задейства както за диапазона от стойности.

  • СЪЮЗ. Много удобен оператор за комбиниране на няколко заявки. Той вече се е срещал сред примерите в тази статия. Можете да покажете необходимите редове от няколко таблици, като комбинирате UNION за по-удобна употреба. него този синтаксис: SELECT COLUMN_NAME от таблица СЪЮЗ изберете от imya_drugogo_stolbtsa imya_drugoy маса. Резултатът е обобщаваща таблица с обединени заявки.

  • ПЪРВЕН КЛЮЧ. Преведено като "първичен ключ". Всъщност тази терминология се използва в референтните материали. Това означава уникален идентификатор за низа. Използва се като правило при създаване на таблица за определяне на поле, което ще го съдържа.

  • DEFAULT. Подобно на предишното изявление, то се използва при изпълнение на заявката за създаване. Тя определя стойността по подразбиране, с която ще бъде попълнено полето при създаването му.

Няколко съвета за разработване на платформа за работа със SQL

  1. NULL. Начинаещите, а не само програмистите, често забравят за възможността да получат стойност NULL при създаването на заявки. В резултат на това грешката се промъква в кода, който е трудно да се проследи по време на отстраняване на грешки. Ето защо, при създаването на една маса, или преизчислени стойности на пробите трябва да спрете и да мисля, и дали поява NULL се вземат под внимание в района на заявка.

  2. Памет. Тази статия показа няколко функции, които могат да изпълняват някои задачи. Когато разработвате shell, за да работите с базата данни, можете да превъзмогнете изчисляването на прости изрази в системата за управление на бази данни. В някои случаи това значително увеличава производителността.

  3. Ограничения. Ако трябва да получите само две от база данни с хиляди линии, тогава трябва да използвате оператори като LIMIT или TOP. Не е необходимо да извличате данните, като използвате езика за разработка на корпуса.

  4. Свържете. След получаване на данни от няколко таблици, много програмисти започват да ги обединяват чрез памет на черупки. Но защо? В края на краищата можете да направите едно искане, в което всичко това ще бъде налице. Не е нужно да пишете допълнителен код и да резервирате допълнителна памет в системата.

  5. Подреждане. Ако има възможност да се приложи поръчка в заявката, т.е. в СУБД, тогава трябва да я използвате. Това значително ще спести ресурси при стартиране на програма или услуга.

  6. Много искания. Ако трябва да вмъкнете много записи последователно, а след това за оптимизация, трябва да помислите за вмъкване на пакети данни с една заявка. Това също така ще увеличи ефективността на цялата система.

  7. Замислено разполагане на данни. Преди да създадете структурата на базата данни, трябва да помислите дали имате нужда от толкова голям брой таблици и полета. Може би има начин да ги комбинирате или да се откажете от тях. Много често програмистите използват твърде много данни, които никога няма да се използват никъде.

  8. Видове. За да спестите място и ресурси, трябва да сте чувствителни към видовете използвани данни. Ако е възможно да използвате по-малко "тежък" тип памет, тогава е необходимо да я приложите. Например, ако е известно, че в тази област е числова стойност, няма да надвишава 255, защо използването на 4-байт INT, ако има TINYINT 1 байт.

заключение

В заключение следва да се отбележи, че езикът е структурирана SQL заявки вече се използват почти навсякъде - интернет страници, уеб услуги, софтуер за настолни компютри, мобилни приложения. Следователно, знанието на SQL ще помогне на всички клонове на развитието.

В същото време модификациите на оригиналния стандарт на езика понякога се различават един от друг. Например PL SQL изразите може да имат различен синтаксис, отколкото в SQL Server. Ето защо, преди да започнете да се развивате с тази технология, си струва да прочетете ръководствата по нея.

В бъдещите си колеги, които биха могли да надхвърлят SQL функционалност и производителност, че е малко вероятно да се появи, така че този обхват е доста обещаващ ниша за всеки програмист.

Споделяне в социалните мрежи:

сроден