Компјутери, Програмирање
Основни SQL извештаи
SQL стандард е донесен во 1992 година и се уште во употреба и денес. Дека тој стана референтна точка за многу системи за управување со бази на податоци. Се разбира, некои производители користат своја интерпретација на стандардот. Но, во секој систем, се уште се главните компоненти - SQL извештаи.
воведувањето
Користење на SQL извештаи во базата на податоци се случува маси за управување со вредности и нивната подготовка за понатамошна анализа и прикажување. Тие се збир на клучни зборови, со што системот не знае што да прави со податоци.
Се дефинираат неколку категории на SQL извештаи:
- дефиниција на базата на податоци објекти;
- манипулирање вредности;
- заштита и управување;
- параметри сесија;
- Информации за база;
- статички SQL;
- динамички SQL.
SQL извештаи за манипулација со податоци
Оваа категорија ги вклучува клучни зборови со кои може да се контролира поставување на вредностите во базата на податоци.
Вметни. Внесува ред во табела. Тоа може да се користи како една вредност или повеќе, што е дефинирано од страна на одредени состојба. На пример:
INSERT INTO
името на табелата (колона 1 име, името на колоната 2)
ВРЕДНОСТИ (вредност 1 вредност 2).
За да го користите операторот на SQL изјава INSERT со повеќе вредности, користете следнава синтакса:
INSERT INTO
Име на 1 маса (име на колоната 1, колона име 2)
Изберете го името колона 1, името на колоната 2
Од табела име 2
КАДЕ име 2.imya колоната во табелата 1> 2
Ова прашање избира сите податоци во Табела 2, кој е поголем од 2 за 1 колона и ставете ги во прв план.
Ажурирање. Како што сугерира името, оваа изјава ги ажурира податоците за пребарување SQL во постоечка маса на одредена основа.
На пример:
Ажурирање име табела 1
името СЕТ колона = 2 "Василиј"
КАДЕ маса име 1.imya колона 1 = 1
Оваа структура пополни вредност Василиј сите редови, кои ги исполнуваат број 1 во првата колона.
Избриши. Брише податоци од табелата. Можете да наведете било која состојба или да ги отстрани сите редови.
Избриши од име на табелата
КАДЕ име tablitsy.imya колона 1 = 1
Горенаведените пребарување ќе ги избрише сите податоци од базата на податоци со вредноста во однос на првата колона. Еве како можете да ја избришете целата табела:
Избриши од име на табелата.
Следна е да се каже во врска со SELECT изјава. Тој е еден од најважните, па тој ќе мора да се посвети посебно поглавје.
SELECT изјава
Главната цел на SELECT - избор на податоци во согласност со одредени услови. Како резултат на неговата работа е секогаш нова табела со избрани податоци. MS оператор SQL Избери може да се користи со тежина различни барања. Затоа, заедно со него, може да се разгледа и други сродни клучни зборови.
За да изберете сите на симболот на податоци "*" се користи од одредена маса.
SELECT *
Од табела име 1
Како резултат на ова барање ќе биде точна копија на табелата 1.
И тука е Земени од КАДЕ состојба која вади од табелата 1, сите вредности поголеми од 2 во колона 1.
SELECT *
Од табела име 1
КАДЕ име 1.imya колоната во табелата 1> 2
Вие исто така може да се определи во изборот што се потребни само некои колони.
Избери име на табелата 1.imya колона 1
Од табела име 1
Како резултат на ова прашање ќе се сите линии со вредности од колона 1. Користење на MS SQL оператори може да се создаде своја маса, во текот на замена на, пресметување и замена на одредени вредности.
Избери
Име на табелата 1.imya колона 1
Име на табелата 1.imya колона 2
Име на табелата 1.imya колона 3
«=" Како EQ
Име на табелата 1.imya колона 2 од името на маса * 1.imya колона 3 AS Збирот
Од табела име 1
Оваа навидум сложена пребарување достигнува сите вредности од табела 1, а потоа создава нова колона и EQ Збирот. Прво ќе влезе знакот "+", во втората колона податоци на производот 2 и 3. Овој резултат може да се претстави што се на маса, за да се разбере како тоа функционира:
колона 1 | колона 2 | колона 3 | EQ | Збирот |
Име на производот 1 | 10 | 50 | + | 500 |
Име на производ 2 | 15 | 100 | + | 1500 |
Ако сте со користење на SELECT изјава, можете веднаш да трошат нарачување податоци на која било основа. Тоа го користи зборот Подреди по.
Избери
Име на табелата 1.imya колона 1
Име на табелата 1.imya колона 2
Име на табелата 1.imya колона 3
Од табела име 1
Подреди по името на колоната 2
Како резултат на маса ќе изгледа вака:
колона 1 | колона 2 | колона 3 |
1 | 1 | 54 |
3 | 2 | 12 |
7 | 3 | 100 |
2 | 5 | 1 |
Тоа е, сите линии се поставени во таков начин што во колоната 2 вредности се во нагорна линија.
Податоци исто така можат да се добијат од повеќе табели. За да биде појасно, мора прво да се замисли дека тие имаат две, некои се во базата на податоци:
Табела "Вработени"
број | име | презиме |
1 | Vasya | Vasin |
2 | Петја | Петин |
Табела "плата"
број | стапка | заслужен |
1 | 1 | 10000 |
2 | 0.5 | 3500 |
Сега треба, како што се поврзување на две маси за да се добие на заедничките вредности. Користење на основните SQL извештаи може да се направи како што следува:
Избери
Sotrudniki.Nomer
Sotrudniki.Imya
Zarplata.Stavka
Zarplata.Nachisleno
Од вработените Плата
Каде што Sotrudniki.Nomer = Zarplata.Nomer
Постои Земени од две различни маси на вредности, обединети од страна на број. Резултатот е следново множество на податоци:
број | име | стапка | заслужен |
1 | Vasya | 1 | 10000 |
2 | Петја | 0.5 | 3500 |
А малку повеќе за одберете. Користење на агрегат функции
Една од основните извештаи SQL SELECT може да произведе некои пресметки во примерокот. За да го направите ова, тој го користи одредени функции и формули.
На пример, за да го добиете бројот на записи во табелата "вработени", ќе треба да се користи за пребарување:
Изберете брои (*) како N
од вработените
Резултатот ќе биде на маса со една колона и вредност.
N |
2 |
функција може да се користи во прашања кои се пресмета сумата, максималните и минималните вредности, а просечната. За да го направите ова, клучни зборови се користат SUM, Max, Min, AVG.
На пример, тоа е потребно да се одржи на примерок од веќе познатите "плата" табела:
број | стапка | заслужен |
1 | 1 | 10000 |
2 | 0.5 | 3500 |
Може да се применува такво барање и да видиме што се случува:
Избери
SUM (Zarplata.Nachisleno) КАКО Збирот
MAX (Zarplata.Nachisleno) КАКО MAX
MIN (Zarplata.Nachisleno) КАКО MIN
AVG (Zarplata.Nachisleno) КАКО Сред
од плата
Конечната табела ќе биде како што следува:
Збирот | MAX | MIN | Сред |
13500 | 10000 | 3500 | 6750 |
Тоа е начинот на кој, можете да изберете од базата на податоци на соодветните вредности на мува да се изврши пресметка на различни функции.
Унија, пресекот и разликата
Комбинираат повеќе прашања во SQL
Избери Sotrudniki.Imya
од вработените
Каде што Sotrudniki.Nomer = 1
УНИЈА
Избери Sotrudniki.Imya
Од вработените Плата
Каде што Zarplata.Nomer = 1
Треба да се има на ум дека во оваа табела асоцијација мора да бидат компатибилни. Тоа е, да имаат ист број на колони.
Синтаксата на SELECT изјава и постапката за обработка на
Првото нешто Избери одредува областа од каде што ќе биде потребно за податоци. За да го направите ова, користете клучни зборови од. Ако не е одредено, што да изберат.
тогаш може да се презентира изјавата SQL КАДЕ. Со помош на SELECT тече низ секој ред од табелата и ги проверува податоците за усогласување со оваа состојба.
Ако барањето има група од страна, а потоа постои групирање на вредностите на параметрите.
Оператори да се споредат податоците
Тие имаат неколку видови. Во SQL оператори споредба може да пробате различни типови на вредности.
"=". Означува, како што може да се погоди, рамноправноста на двата изрази. На пример, тоа веќе се користи во примерот погоре - каде Zarplata.Nomer = 1.
">". Поголемо знак. Ако вредноста на левата страна на изразот е поголема тогаш логично е вистина враќаат, а услов е исполнет.
"<". Помалку од знак. Обратна претходниот оператор.
Знаци на "<=" и "> =". Таа се разликува од едноставна оператори се повеќе и помалку е дека со еднаков операнди состојба е исто така точно.
"<>". Не ми е гајле. Состојбата се смета за точно, ако само еден операнд не е еднаков со друг. Тој има уште една интерпретација - "=".
КАКО
Преведете овој клучен збор може да биде како "исти". КАКО оператор во SQL се користи приближно на ист принцип - раководи со барањето од шаблон. Тоа е, тоа ви овозможува да се прошири примерок на податоци од базата на податоци со користење на регуларни изрази.
На пример, тој ги поставува таква задача: од веќе познати база "персонал" да ги добиете сите луѓе чие име завршува со "јас". Тогаш барањето може да биде составен како што следува:
SELECT *
од вработените
КАДЕ име како `% I` ll
Знакот за процент во овој случај значи маската, што е, било карактер, и нивниот број. И во писмото: "Јас» SQL утврди дека на последниот карактер да биде така.
СЛУЧАЈ
Оваа изјава SQL Server, имплементација на повеќе избор. Тоа личи на изјавата прекинувачот во многу јазици за програмирање. случај на успех во SQL врши акција на неколку услови.
На пример, можете да изберете од маса "плата" максималните и минималните вредности.
број | стапка | заслужен |
1 | 1 | 10000 |
2 | 0.5 | 3500 |
Тогаш барањето може да биде составен како што следува:
SELECT *
од плата
КАДЕ СЛУЧАЈ КОГА SELECT MAX (плаќање) ТОГАШ Максимален
При избор MIN (плаќање) ТОГАШ Минимална
резултат КРАЈ
во "обвинети" колумна во овој контекст, системот бара максималната и минималната вредност. Потоа, со помош поле КРАЈ создаде "вкупно", кои ќе бидат најавени во "максимум" или "минимум" во зависност од резултатот на состојбата.
Патем, во SQL постои повеќе компактна форма на случај - се соединуваат.
податоци дефиниција
Овој став овозможува да ги извршуваат различни менување на маси - се создаде, избришете, да ги промените, и да работат со индекси.
Првиот, кој вреди да се размислува - CREATE TABLE. Тој не прави ништо друго освен креирање на табела. Ако едноставно внесете CREATE TABLE пребарување, ништо нема да се случи, затоа што треба да се определи уште неколку параметри.
На пример, да се создаде познатите маса "вработени" сакаат да се користи командата:
CREATE TABLE вработени
(ID број (10) не NULL
Име varchar (50) НЕ NULL
Презиме varchar (50) НЕ NULL)
Во ова барање, во заграда веднаш дефинирани поле имиња и нивните видови, како и дали тоа може да биде NULL.
зависници ТАБЕЛА
Врши едноставна задача - отстранување табела. Таа има дополнителна опција ако постои. Таа ги апсорбира грешка при бришење, ако е потребно табелата не постои. Пример за употреба:
Зависници ТАБЕЛА вработени ако постои.
КРЕАЦИЈА Индекс
Во SQL, постои систем на индексот, кој им овозможува побрз пристап до податоци. Во принцип, тоа е линк што укажува на одредена колона. Креирате индекс може да биде едноставна барање:
КРЕАЦИЈА Индекс nazvanie_indeksa
ЗА nazvanie_tablitsy (nazvanie_stolbtsa)
Користете ја оваа изјава во T-SQL, Oracle, PL SQL и многу други толкувања технологии.
Alter ТАБЕЛА
Високо функционални оператор со бројни опции. Во принцип, промената произведува дефиниција структура и маси распределба. Оператор се користи во Oracle SQL, Postgres, и многу други.
Суд сега ќе се претстави со различни опции за користење на Alter ТАБЕЛА.
Додај. Врши додавање на колона во табелата. него оваа синтакса: Alter ТАБЕЛА Додај nazvanie_tablitsy nazvanie_stolbtsa tip_hranimyh_dannyh. Може да има параметар АКО НЕ ИМА, кои ги потисне грешка ако колона веќе создаде;
Зависници. Отстранува колона. Ако постои, исто така, е завршен, што ќе генерира грешка велејќи дека бараната колона не постои;
Промена. Се користи за да се преименува името на областа е одреден. употреба пример: Alter ТАБЕЛА ПРОМЕНА nazvanie_tablitsy OldName NEW_NAME;
Измени. Оваа команда ќе го промени видот на одредена колона и дополнителни атрибути. И се користи како оваа: Alter ТАБЕЛА ДА nazvanie_tablitsy nazvanie_stolbtsa тип на податоци атрибути;
CREATE VIEW
Во SQL, не постои такво нешто како идеја. На кратко, тоа е еден вид на виртуелен маса со податоци. Таа е формирана како резултат на примерокот со употреба на јазикот SQL Изберете изјава. Пати да го ограничите пристапот до базата на податоци за да се скријат, да го замени вистинските имиња колона.
Процесот на создавање се случува со едноставно пребарување:
Креирај име VIEW поглед КАКО Изберете од * име на табелата
Земање мостри може да се случи како целата база на податоци, како целина, а во одредени услови.
А малку за карактеристиките
Во SQL queries често се користат различни вградена во функциите кои ќе ви овозможи да комуницирате со податоците и да ги конвертирате во лет. Вреди да се размислува за нив, како што се составен дел на структуриран јазик.
Брои. Произведува броење редови или записи во одредена маса. Како опција, можете да наведете името на колоната, а потоа податоците се земени од него. SELECT COUNT * Од вработените;
AVG. Оваа опција се однесува само на колони со нумерички податоци. Нејзиниот резултат е одредување на аритметичка средина на сите вредности;
MIN и MAX. Овие функции се користат во оваа статија. Тие го дефинираат максималните и минималните вредности на изјави колона;
Сума. Тоа е едноставно - на функција го пресметува збирот на вредности во колона. Тоа се користи исклучиво за нумерички тип на податок. Додавање на параметарот на барањето различни, ќе бидат додадени само на уникатни вредности;
Круг. Функција заокружување децимални фракционо броеви. Синтаксата користи од страна на името на колоната, а бројот на децимални места;
LEN. А едноставна функција која пресметува должината на колоната. Резултатот ќе биде нова табела го покажува бројот на карактери;
СЕГА. Овој клучен збор се користи за пресметка на тековниот датум и време.
дополнителни оператори
Многу примери на SQL извештаи се клучни зборови, кои вршат мали задачи, но, сепак, во голема мера се поедностави примерок или активност базата на податоци.
АС. Се користи кога сакате визуелно да се организираме резултат на доделување на одредено име да се добие маса.
Помеѓу. Многу корисна алатка за земање мостри. Тоа укажува на опсег на вредности, вклучувајќи ја и потребата за добивање на податоци. параметар за внесување добива од и до голем број опсег се користи;.
НЕ. Операторот дава спротивно на изразување.
Скратувајќи. Отстранува податоците од наведената основа дел. Различни од оние оператори кои го направите на податоци по неговата употреба невозможно. Вреди да се напомене дека спроведувањето на даден збор во различни SQL може да бидат различни толкувања. Значи пред да се обидете да го користите скратувајќи, подобро да се запознаат со основните информации.
ГРАНИЧНИ. Го поставува бројот на излезни линии. Особеноста на операторот е дека тоа е секогаш се наоѓа на крајот. Таа ги зема еден задолжителен и еден изборен параметар. Првиот покажува колку реда со избраните податоци за прикажување. И ако вториот, тогаш операторот работи и на опсег на вредности.
УНИЈА. Многу лесен за операторот да се комбинираат повеќе прашања. Тој веќе се има сретнато меѓу примери за тоа во овој член. Може да се прикаже редови од повеќе табели, UNION комбинирање на нив за полесно користење. него оваа синтакса: Избери column_name од табелата УНИЈА изберете од imya_drugogo_stolbtsa imya_drugoy маса. Резултатот е збирната табела за обединета барања.
Примарен клуч. Преведе како "примарен клуч." Всушност, таквите терминологија се користи во референтни материјали. Тој е единствен идентификатор за редот. Тоа се користи, како по правило, кога создавање на маса за да се покаже поле што ќе го содржи.
Стандардните. Исто како и претходниот оператор, во спроведувањето на создавање на барањето. Тој ги дефинира стандардната вредност, кој ќе биде исполнет во полето, кога таа се создава.
Неколку совети како да се развие платформа за работа со SQL
NULL. Почетници и не само програмерите во подготовката на барањата често забораваме за достапноста на NULL вредности. Како резултат на тоа, код за грешка посетуваме во, што е тешко да се следи во процесот на дебагирање. Затоа, кога создавање на маса, или пресметаните вредности примерок треба да престанат и да размислуваат, и дали појавата NULL се зема во предвид во делот за пребарување.
Меморија. Во овој труд беа прикажани голем број на функции, како способен за извршување на одредени задачи. Во развојот на школка за работа со базата на податоци, може да се "надмине" пресметката на едноставни изрази за базата на податоци систем. Во некои случаи, ова му дава значителен поттик во перформансите.
Ограничувања. Ако сакате да се добие од базата на податоци со илјадници редови само два, тоа е потребно да се користи оператори, како што се ограничи или ТОП. Нема потреба за добивање на податоци со помош на школка на развој на јазикот.
Поврзете се. По добивање на податоци од повеќе табели, многу програмери да почнат да ги намали заедно плик меморија значи. Но, зошто? По сите, можете да поднесете барање во кое сите што ќе бидат присутни. Вие не треба да се напише код еднаш и го задржуваме дополнителна меморија во системот.
Сортирање. Ако тоа е можно да се примени регулатива во барањето, односно силите DBMS, потребно е да го користам. Ова во голема мера ќе заштедите на ресурси, кога на програмата или услуга.
Многу барања. Ако треба да се вметне многу рекорди во низа, а потоа оптимизација треба да се размислува за податочен пакет се вметнува едно барање. Ова исто така ќе се зголеми ефикасноста на целиот систем.
Внимателно поставување на податоци. Пред изготвување на база структура треба да се размислува за тоа како и дали таков голем број на табели и полиња потребно. Можеби постои начин да ги комбинирате, или се откажат од некои. Многу често, програмери употреба на прекумерна количина на податоци кои се никаде и никогаш не се користи.
Типови. За да се зачува простор и ресурси треба да бидат чувствителни на типови на податоци се користи. Ако можете да ги искористат предностите на помалку "тешки" за тип на меморија, ќе мора да го користат неговото име. На пример, ако се знае дека во оваа област е нумеричка вредност нема да надминува 255, зошто употребата на 4-бајт INT, ако има TINYINT 1 бајт.
заклучок
Во заклучок, тоа треба да се напомене дека јазикот е структурирана SQL queries сега се користи речиси насекаде - веб-сајтови, веб сервиси, десктоп софтвер, мобилни апликации. Затоа, SQL знаење ќе им помогне на сите сектори на развој.
Сепак, промената на мајчин јазик стандарден јазик понекогаш се разликуваат едни од други. На пример, PL SQL оператори може да имаат различни синтакса отколку во SQL Server. Значи пред да се започне развој со оваа технологија, потребно е да се запознаат со тоа од страна на упатства.
Во иднина колеги, кои може да го надмине SQL функционалност и перформанси, тоа е малку веројатно да се појави, па овој опсег е доста ветувачки лажат за секој програмер.
Similar articles
Trending Now