Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • In contact cu
  • Formate de operator pentru modificarea și ștergerea datelor. Instrucțiuni SQL de bază

Formate de operator pentru modificarea și ștergerea datelor. Instrucțiuni SQL de bază

SQL (StructuredQueryLanguage - „Structured Query Language”) este un limbaj de calculator de uz general utilizat pentru a crea, modifica și manipula date în baze de date relaționale. Limbajul SQL se bazează pe algebră relațională și este o colecție de operatori.

Există 4 grupuri de operatori. Luați în considerare un grup de operatori de manipulare a datelor (Data Manipulation Language, DML, SQL DML)

Selectarea datelor

Selectarea datelor este cea mai frecventă operație efectuată folosind SQL. Instrucțiunea SELECT este una dintre cele mai importante instrucțiuni din această limbă pentru selectarea datelor. Sintaxa pentru acest operator este următoarea:

SELECTARE coloana FROM tabel

Instrucțiunile SELECT trebuie să conțină cuvintele SELECT și FROM; alte cuvinte cheie sunt opționale.

Cuvântul cheie SELECT este urmat de informații despre câmpurile care trebuie incluse în setul de date rezultat. Un asterisc (*) indică toate câmpurile dintr-un tabel, de exemplu:

Pentru a selecta o singură coloană, se utilizează următoarea sintaxă:

SELECTAȚI companie

Un exemplu de selectare a mai multor coloane arată astfel:

SELECTAȚI companie, telefon,Poștă

Cuvântul cheie FROM este folosit pentru a specifica numele tabelelor din care să se selecteze înregistrările, de exemplu:

SELECTAȚI * DIN Clienți

Această interogare va returna toate câmpurile din tabelul Clienți.

Puteți utiliza clauza WHERE (opțională) pentru a filtra rezultatele returnate de o instrucțiune SELECT

SELECTAȚI * FROM Produse WHERE Categorie = 4

Puteți folosi diferite expresii în clauza WHERE,

WHERE expresia1 [(ȘI | SAU) expresia2 ...]

de exemplu:

SELECTAȚI * FROM Produse UNDE Categoria = 2 ȘI Postavshik > 10

SELECTAȚI Nume, Preț FROM Produse WHERE Categorie= 3 SAU Preț< 50

Puteți utiliza următorii operatori:

< Меньше

<= Меньше или равно

<>Nu este egal

> Mai multe

>= Mai mare sau egal

Clauza ORDER BY (opțională) este folosită pentru a sorta setul de rezultate după una sau mai multe coloane. Cuvintele cheie ASC (crescător) sau DESC (descendent) sunt folosite pentru a defini ordinea de sortare. În mod implicit, datele sunt sortate în ordine crescătoare.

Modificarea datelor

Pe lângă preluarea datelor, SQL poate fi folosit pentru a actualiza și șterge date, pentru a copia înregistrări în alte tabele și pentru a efectua alte operațiuni. Mai jos, ne vom uita la instrucțiunile UPDATE, DELETE și INSERT utilizate pentru a îndeplini unele dintre aceste sarcini.

Declarație UPDATE

O instrucțiune UPDATE este folosită pentru a modifica valorile într-una sau mai multe coloane ale unui tabel. Sintaxa pentru acest operator este:

UPDATE tabelul SET column1 = expression1 WHERE criteriile

O expresie dintr-o clauză SET poate fi o constantă sau rezultatul unui calcul. De exemplu, pentru a crește prețul tuturor produselor care costă mai puțin de 10 USD, puteți rula următoarea interogare:

UPDATE Produse SET Pret = Pret * 1.1 WHERE Pret< 10

Declarația DELETE

Pentru a șterge rânduri din tabele, utilizați instrucțiunea DELETE, a cărei sintaxă este:

DELETE FROM tabelul WHERE criteriile

Eliminați toate produsele al căror cost este mai mic de 100:

ȘTERGEȚI DIN Produse UNDE Preț< 100

OperatorINTRODUCE

Pentru a adăuga înregistrări în tabele, utilizați instrucțiunea INSERT, a cărei sintaxă este:

INSERT INTO table ( VALUES (expresie [, ...])

De exemplu, pentru a adăuga un client nou la tabelul Clienți, puteți utiliza următoarea interogare:

INSERT INTO Customers (CustomerID, CompanyName) VALUES („XYZ”, „XYZ Deli”)

Un operator O este un cuvânt sau un caracter rezervat folosit în principal în WHERE și a dat o instrucțiune SQL pentru a efectua o (operații) cum ar fi comparații și operații aritmetice.

Operatorii sunt utilizați pentru a defini condiții în SQL și servesc ca îmbinări pentru mai multe condiții într-o instrucțiune.

  • Operatori aritmetici
  • Operatori de comparație
  • Operatori logici
  • Operatorii obișnuiau să anuleze o condiție

Operatori aritmetici în SQL:

Să presupunem că o variabilă A este egal cu 10, iar variabila b este egal cu 20, atunci:

Operatori de comparație în SQL:

Să presupunem că variabila a este 10 și variabila b este 20, atunci:

operatorDescriereexemplu
= Verifică dacă valorile a doi operanzi sunt egale sau nu, dacă da atunci condiția devine adevărată.(a = b) nu este adevărată.
!= (a != b) este adevărată.
<> Verifică dacă valorile a doi operanzi sunt egale sau nu, dacă valorile nu sunt egale atunci condiția devine adevărată.(A<>b) adevărat.
> Verifică dacă valoarea operandului din stânga este mai mare decât valoarea operandului din dreapta, dacă da, atunci condiția devine adevărată.(a > b) nu este adevărată.
< Verifică dacă valoarea operandului din stânga este mai mică decât valoarea operandului din dreapta, dacă da, atunci condiția devine adevărată.(A< b) истинно.
> = Testează dacă valoarea operandului din stânga este mai mare sau egală cu valoarea operandului din dreapta, dacă da, atunci condiția devine adevărată.(a >= b) este incorectă.
<= Testează dacă valoarea operandului din stânga este mai mică sau egală cu valoarea operandului din dreapta, dacă da, atunci condiția devine adevărată.(A<= b) истинно.
Verifică dacă valoarea operandului din stânga nu este mai mică decât valoarea operandului din dreapta, dacă da, atunci condiția devine adevărată.(A!< b) неверно.
!> Verifică dacă valoarea operandului din stânga nu este mai mare decât valoarea operandului din dreapta, dacă da, atunci condiția devine adevărată.(a! > b) este corect.

Operatori logici în SQL:

Iată o listă a tuturor operatorilor logici disponibili în SQL.

operatorDescriere
TOATEOperatorul ALL este folosit pentru a compara o valoare pentru toate valorile dintr-un alt set de valori.
ȘIOperatorul AND permite să existe mai multe condiții într-o clauză SQL WHERE.
ORICEOperatorul ANY este utilizat pentru a compara orice valoare aplicabilă dintr-o listă în funcție de condiții.
ÎNTREOperatorul BETWEEN este folosit pentru a găsi valori care se află într-un set de valori, având o valoare minimă și o valoare maximă.
EXISTAOperatorul EXISTS este folosit pentru a căuta prezența unui rând într-un tabel specificat care corespunde anumitor criterii.
ÎNOperatorul IN este utilizat pentru a compara o valoare dintr-o listă de valori literale care a fost definită.
CAOperatorul LIKE este folosit pentru a compara valori similare folosind operatori wildcard.
NUOperatorul NOT modifică semnificația operatorului logic cu care este folosit. De exemplu: NU EXISTĂ, NU ÎNTRE, NU ÎN etc. Acest lucru este negat de operator.
SAUOperatorul OR este folosit pentru a combina mai multe condiții într-o clauză SQL WHERE.
ESTE NULOperatorul nul este folosit pentru a compara o valoare cu o valoare nulă.
UNICDeclarația unică caută fiecare rând din tabelul specificat pentru unicitate (fără duplicate).

Structure Query Language (SQL) a fost creat ca urmare a dezvoltării modelului de date relaționale și este în prezent standardul de limbaj de facto pentru DBMS relațional. Limbajul SQL astăzi este susținut de un număr mare de SGBD de diferite tipuri.

Numele limbajului SQL este de obicei pronunțat prin literele „es-q-el”. Numele mnemonic „See-Quel” este uneori folosit.

Limbajul SQL oferă utilizatorului (cu un efort minim din partea lui) următoarele caracteristici:

Creați baze de date și tabele cu o descriere completă a structurii acestora

Efectuați operațiuni de bază de manipulare a datelor: inserarea, modificarea, ștergerea datelor

Efectuați atât interogări simple, cât și complexe.

Limbajul SQL este complet relațional.

Structura și sintaxa comenzilor sale sunt destul de simple, iar limbajul în sine este universal, adică sintaxa și structura comenzilor sale nu se schimbă la trecerea de la un SGBD la altul.

Limbajul SQL are două componente principale:

DDL (Data Definition Language) pentru definirea structurilor bazei de date și controlul accesului la date

DML (Data Manipulation Language) este folosit pentru a prelua și actualiza datele.

Limbajul SQL este non-procedural, adică atunci când îl utilizați, trebuie să specificați ce informații vor fi obținute și nu cum pot fi obținute. Comenzile SQL sunt cuvinte obișnuite în limba engleză (SELECT, INSERT etc.). Luați în considerare mai întâi instrucțiunile SQL DML:

SELECT - preluarea datelor din baza de date

INSERT - inserarea datelor într-un tabel

UPDATE - actualizarea datelor dintr-un tabel

DELETE - ștergerea datelor dintr-un tabel

instrucțiunea SELECT

Instrucțiunea SELECT efectuează acțiuni echivalente cu următoarele operații de algebră relațională: select, project și join.

Cea mai simplă interogare SQL care o folosește arată astfel:

SELECT col_name FROM tbl

Cuvântul cheie select este urmat de o listă de coloane separate prin virgulă ale căror date vor fi returnate ca rezultat al interogării. Cuvântul cheie from specifică din ce tabel (sau vizualizare) sunt preluate datele.

Rezultatul unei interogări select este întotdeauna un tabel, care se numește tabel cu rezultate. Mai mult, rezultatele unei interogări executate cu o instrucțiune select pot fi folosite pentru a crea un nou tabel. Dacă rezultatele a două interogări pe tabele diferite au același format, acestea pot fi combinate într-un singur tabel. De asemenea, tabelul obținut în urma unei interogări poate deveni subiect de interogări ulterioare.

Pentru a selecta toate coloanele și toate rândurile unui tabel, este suficient să emiti un SELECT * FROM tbl;

Luați în considerare un tabel de produse care conține informații despre preț pentru diferite produse:

Solicitați rezultatul

SELECT * FROM Produs;

va fi întregul produs de masă.

Puteți selecta anumite coloane ale unui tabel folosind o interogare

SELECT col1, col2, … , coln FROM tbl;

Deci, rezultatul interogării

SELECTează tipul, prețul din produs;

va fi o masă

Lista coloanelor din instrucțiunea select este folosită și dacă este necesar să se schimbe ordinea coloanelor din tabelul rezultat:

Pentru a selecta doar acele rânduri de tabel care îndeplinesc anumite restricții, se folosește cuvântul cheie special unde, urmat de o condiție logică. Dacă intrarea îndeplinește această condiție, este inclusă în rezultat. În caz contrar, intrarea este eliminată.

De exemplu, selectarea acelor produse din tabelul Produs al căror preț satisface condiția Preț<3200, можно осуществить, используя запрос

SELECTAȚI * FROM Produs unde Preț<3200;

Rezultatul lui:

Condiția poate fi compusă și combinată folosind operatorii logici NOT , AND, OR, XOR, de exemplu: unde id_ Price>500 AND Price<3500. Допускается также использование выражений в условии: where Price>(1+1) și constante de șir: unde name= "autobalances".

Utilizarea constructului BETWEEN var1 AND var2 vă permite să verificați dacă valorile unei expresii se încadrează în intervalul de la var1 la var2 (inclusiv aceste valori):

SELECTAȚI * FROM Produs la care Prețul INTRE 3000 SI 3500;

Prin analogie cu operatorul NOT BETWEEN, există operatorul NOT IN.

Numele de coloane specificate în clauza SELECT pot fi redenumite. Pentru aceasta se folosește cuvântul cheie AS, care, totuși, poate fi omis, întrucât este implicit subînțeles. De exemplu, o cerere

SELECT Tip AS model, Type_id AS num FROM Product unde Type_id =3

va reveni (numele de alias trebuie scrise fără ghilimele):

Operatorul LIKE este pentru a compara un șir cu un model:

SELECT * FROM tbl unde col_name LIKE "abc"

Această interogare returnează numai înregistrări care conțin valoarea șirului abc în coloana col_name.

În model sunt permise două caractere wildcard: „_” și „%”. Primul dintre ele înlocuiește un caracter arbitrar din șablon, iar al doilea înlocuiește o secvență de caractere arbitrare. Deci, „abc%” se potrivește cu orice șir care începe cu abc, „abc_” se potrivește cu orice șir de 4 caractere care începe cu abc, „%z” se potrivește cu orice șir care se termină cu z și, în final, „%z%” - secvențe de caractere care conțin z.

Puteți găsi toate înregistrările în tabelul Produs unde valoarea Tip începe cu litera „a” după cum urmează:

SELECT * FROM Produs unde Tip LIKE „a%”;

cântare de camion

Dacă șirul de căutare conține un caracter wildcard, atunci trebuie să specificați un caracter de control în clauza ESCAPE. Acest caracter de control trebuie utilizat în modelul înainte de caracterul wildcard, indicând faptul că acesta din urmă trebuie tratat ca un caracter obișnuit. De exemplu, dacă doriți să găsiți toate valorile care conțin caracterul „_” într-un anumit câmp, atunci modelul „%_%” va returna toate înregistrările din tabel. În acest caz, șablonul trebuie scris după cum urmează:

"%|_%" ESCAPE "|"

Pentru a verifica dacă valoarea se potrivește cu șirul „20%”, puteți utiliza următorul operator:

LIKE „20#%” ESCAPE „#”

Operatorul IS NULL vă permite să verificați absența (prezența) unei valori NULL în câmpurile unui tabel. Utilizarea operatorilor normali de comparare în aceste cazuri poate duce la rezultate incorecte, deoarece comparația cu NULL are ca rezultat UNKNOWN (necunoscut). Astfel, condiția de selecție ar trebui să arate astfel:

unde col_name ESTE NULL în loc de unde col_name=NULL.

Rezultatul implicit de preluare returnează înregistrările în aceeași ordine în care sunt stocate în baza de date. Dacă doriți să sortați înregistrările după una dintre coloane, trebuie să utilizați clauza ORDER BY, după care se indică numele acestei coloane:

SELECT * FROM tbl ORDER BY col_name;

Ca rezultat al acestei interogări, înregistrările vor fi returnate în ordinea crescătoare a valorii atributului col_name.

Înregistrările pot fi, de asemenea, sortate după mai multe coloane. Pentru a face acest lucru, numele lor trebuie specificate după ORDER BY, separate prin virgule:

SELECTAȚI * FROM tbl ORDER BY col_name1, col_name2.

Înregistrările vor fi sortate după câmpul col_name1; dacă există mai multe înregistrări cu aceeași valoare în coloana col_name1, atunci acestea vor fi sortate după câmpul col_name2.

Dacă doriți să sortați înregistrările în ordine inversă (de exemplu, după dată descrescătoare), trebuie să specificați ORDER BY col_name DESC.

Pentru sortarea directă, există cuvântul cheie ASC, care este acceptat ca valoare implicită.

Dacă rezultatul selecției conține sute și mii de înregistrări, producția și procesarea acestora necesită o perioadă semnificativă de timp.

Prin urmare, informațiile sunt adesea paginate și prezentate utilizatorului în bucăți. Paginarea este utilizată cu cuvântul cheie limită urmat de numărul de intrări de afișat. Următoarea interogare preia primele 10 înregistrări în timp ce sortează simultan înapoi în câmpul col_name1:

SELECTAȚI * FROM tbl ORDER BY col_name1 DESC LIMIT 10

Pentru extragerea următoarelor 10 înregistrări, cuvântul cheie limit este folosit cu două valori: prima specifică poziția din care să fie afișat rezultatul, iar a doua specifică numărul de înregistrări de preluat:

SELECT * FROM tbl ORDER BY col_name1 DESC LIMIT 10,10

Pentru a prelua următoarele 10 înregistrări, utilizați construcția LIMIT 20, 10.

Și peste date de masă.

Se numește limbajul SQL incorporat, deoarece conține funcțiile unui limbaj de dezvoltare cu drepturi depline și se concentrează pe accesul la date, drept urmare este inclus în instrumentele de dezvoltare a aplicațiilor. Standardele de limbaj SQL acceptă Pascal, Fortran, COBOL, C și alte limbaje de programare.

Există 2 metode de utilizare a SQL încorporat:

  • static utilizarea limbii ( SQL static) - textul programului conține apeluri la funcții SQL care sunt incluse în modulul executabil după compilare.
  • dinamic utilizarea limbii ( SQL dinamic) – construcția dinamică a apelurilor de funcții SQL și interpretarea acestora. De exemplu, puteți accesa datele bazei de date de la distanță în timpul execuției programului.

Limbajul SQL (ca și alte limbaje de baze de date) este conceput pentru a pregăti și executa interogări. Ca urmare a executării unei interogări de date din unul sau mai multe tabele, se obține un set de înregistrări, care se numește performanţă.

Definiția 1

Performanţă este un tabel care este format ca rezultat al executării interogării.

Operatori de bază în limbajul de interogare SQL

Instrucțiunile SQL sunt împărțite condiționat în 2 sublimbi:

  1. Limbajul de definire a datelor DDL;
  2. Limbajul de manipulare a datelor DML.

În tabel, simbolul * este marcat operatori specifici limba.

Să aruncăm o privire la cele mai importante instrucțiuni SQL.

    Declarație de creare a tabelului:

    Numele tabelului care se creează și numele a cel puțin unei coloane (câmp) sunt operanzi obligatorii. Pentru numele coloanei, trebuie să specificați tipul de date care vor fi stocate în ea.

    Pentru câmpurile individuale, puteți specifica reguli suplimentare pentru controlul valorilor care sunt introduse în ele. De exemplu, NU NUL indică faptul că câmpul nu poate fi gol și trebuie introdusă o valoare în el.

    Exemplul 1

    Pentru a crea un tabel cărți directorul de cărți, care conține câmpurile:

    tip- tip de carte

    Nume- numele cărții,

    Preț– prețul cărții

    operatorul ar putea arăta astfel:

    Operator de modificare a structurii tabelului:

    Când schimbați structura tabelului, puteți adăuga ( ADĂUGA), Schimbare ( MODIFICA) sau ștergeți ( CĂDERE BRUSCA) una sau mai multe coloane de tabel. Regulile de scriere a acestui operator sunt aceleași ca și pentru operator CREAȚI TABEL. Nu trebuie să specificați pentru a șterge o coloană.

    Exemplul 2

    Pentru a adăuga la tabel cărți câmpuri număr, care va stoca numărul de cărți, puteți scrie operatorul:

    Declarație de drop drop:

    Exemplul 3

    De exemplu, pentru a elimina un tabel existent numit cărți utilizați doar operatorul:

    Declarație de creare a indexului:

    Declarația creează un index pe una sau mai multe coloane ale unui tabel dat, ceea ce accelerează operațiunile de interogare și căutare. Mai mulți indecși pot fi creați pe același tabel.

    Opțiune opțională UNIC este responsabil pentru asigurarea unicității valorilor în toate coloanele care sunt specificate în declarație.

    ASC setează sortarea automată a valorilor în coloane în ordine crescătoare (implicit) și DESC- în ordine descrescătoare.

    Operatorul de eliminare a indexului:

    Vizualizare operator de creare:

    Când creați o vizualizare, puteți omite numele coloanelor. Apoi vor fi folosite numele coloanelor din interogare, care este descris de operatorul corespunzător SELECTAȚI.

    Vedeți operatorul de ștergere:

    Operator de selecție a înregistrărilor:

    Operator SELECTAȚI selectează și efectuează calcule pe date din unul sau mai multe tabele. Rezultatul executării instrucțiunii este un tabel de răspunsuri care conține ( TOATE) sau nu conține ( DISTINCT) linii care se repetă.

    Operand DIN conține o listă de tabele din care sunt luate înregistrări pentru selectarea datelor.

    Operator de modificare a înregistrărilor:

    Noile valori de câmp din înregistrări nu pot conține valori ( NUL) sau calculate după o expresie aritmetică.

    Operator pentru introducerea de noi înregistrări:

    În prima înregistrare a operatorului INTRODUCE se introduc înregistrări noi cu valorile date în coloane.

    În a doua înregistrare a operatorului INTRODUCE sunt introduse rânduri noi, selectate dintr-un alt tabel printr-o propoziție SELECTAȚI.

    Șterge operator de înregistrare:

    Ca urmare a executării operatorului, rândurile care îndeplinesc condiția specificată de operandul opțional sunt șterse din tabelul specificat UNDE. Dacă operandul UNDE nu este specificat, toate înregistrările din tabel sunt șterse.

Disciplina: Baze de date

Operatori lingvisticiSQL

Limbajul SQL include operatori de diferite categorii. Orice instrucțiune SQL constă din cuvinte rezervate și cuvinte definite de utilizator în conformitate cu regulile sintactice stabilite. Ca și în cazul multor limbaje de programare, majoritatea componentelor de instrucțiuni ale limbajului sunt insensibile la majuscule și minuscule. Excepția de la această regulă o constituie, ca de obicei, datele de caractere, care trebuie să țină seama de caz și să utilizeze cele necesare pentru a reprezenta datele.

Pentru a scrie declarații în limbaj, se adoptă un format liber, ceea ce face posibil ca programul SQL să fie mai lizibil prin indentare și aliniere.

    fiecare frază din enunț trebuie să înceapă pe o nouă linie;

    începutul fiecărei fraze trebuie să fie aliniat cu începutul celorlalte fraze ale enunțului;

    fiecare parte a frazei ar trebui să înceapă pe o nouă linie cu o indentație relativă la începutul întregii fraze, ceea ce vă va permite să evidențiați părțile subordonate;

    Unele convenții se aplică operatorilor de scriere:

    majusculele sunt folosite pentru a scrie cuvinte rezervate;

    literele mici sunt folosite pentru a scrie cuvinte definite de utilizator;

    bara verticală „|”” indică necesitatea de a selecta una dintre mai multe valori;

    bretele definesc un element necesar;

    parantezele pătrate definesc un element opțional;

    elipsa „...” este folosită pentru a indica posibilitatea opțională de repetare a constructului, de la zero la mai multe ori.

Operatorii de definire a datelor (Tabelul 1) sunt utilizați pentru a descrie structurile de date utilizate. Această categorie include următoarele afirmații: create table, drop table, alter table, create view, ALTER VIEW, DROP VIEW.

tabelul 1 . Operatori de definire a datelor

Operator Explicaţie

creați un tabel

Masa DROP

schimba masa

CREATE VIEW Creați o vizualizare

modificarea vederii

drop view

Operatorii de manipulare a datelor, care formează următoarea categorie de operatori, sunt proiectați să umple tabelele cu date și să actualizeze informațiile încărcate în acestea. Această categorie include următorii operatori: ștergere, inserare, actualizare (Tabelul 2).

masa 2 . Operatori de manipulare a datelor

OperatorExplicaţie

Delete Șterge unul sau mai multe rânduri care corespund condițiilor

filtrare, de la masa de bază

INSERT Inserează un rând în tabelul de bază

update Actualizează valorile uneia sau mai multor coloane dintr-una sau mai multe

mai multe linii care corespund condițiilor de filtrare

Pentru selectarea informațiilor din baza de date este destinat limbajul de interogare, care în limbajul SQL este reprezentat printr-o singură instrucțiune select (Tabelul 3).

Tabelul 3 Limbajul de interogare

Operator Explicaţie

selectați Selectează rândurile; operator care vă permite să formați rezultatul

tabelul care corespunde interogării

Pe lângă categoriile de operatori indicate, al căror scop nu este greu de imaginat după citirea explicațiilor din tabele, este necesar să mai evidențiem două: operatorii de gestionare a tranzacțiilor (Tabelul 4) și instrumentele de administrare a datelor (Tabelul 5) .

Tabelul 4. Managementul tranzacțiilor

Explicația operatorului

commit Finalizarea tranzacției - finalizarea procesării informațiilor,

combinate într-o tranzacție

rollback Rollback tranzacție - anulați modificările efectuate în timpul execuției

starea bazei de date, marcați-o astfel încât să puteți reveni la ea mai târziu

Tabelul 5 . Administrarea datelor

Explicația operatorului

ALTER DATABASE Schimbați setul de obiecte de bază din baza de date, restricții privind

întreaga bază de date

ALTER DBAREA Modificați o zonă de stocare creată anterior

ALTER PAROLA Schimbați parola pentru întreaga bază de date

CREATE DATABASE Creați o nouă bază de date

CREATE DBAREA Creați o nouă zonă de stocare și faceți-o disponibilă pentru găzduire

DROP DATABASE Eliminați o bază de date existentă

DROP DBAREA Ștergeți o zonă de stocare existentă (dacă nu conține în prezent

sunt localizate datele active)

GRANT Acordați drepturi de acces la un număr de acțiuni pe un obiect de bază de date

REVOCA Revocați drepturile de acces la un obiect sau la unele acțiuni

obiect

În SGBD comercial, setul de operatori de bază este extins. Majoritatea SGBD-urilor includ instrucțiuni pentru a defini și șterge indexul de rulare al procedurilor stocate și instrucțiuni pentru a defini declanșatorii.

Este obișnuit să începeți cunoașterea acestui limbaj luând în considerare capacitățile limbajului de interogare, care în limbajul SQL este reprezentat de o singură instrucțiune select, deoarece această declarație puternică, desigur, este și cea mai complexă. În plus, este interesant de văzut cum poate fi folosit în viitor împreună cu operatorii de manipulare a datelor.

    Selectați declarațiaSELECTAȚI . Formarea de interogări la baza de date

Scopul instrucțiunii select este de a selecta și afișa date din unul sau mai multe tabele de bază de date. Acest operator extrem de puternic, cel mai frecvent utilizat, implementează toate operațiile de algebră relațională. Aceeași cerere poate fi implementată în mai multe moduri, care pot diferi semnificativ în timpul de execuție.

Selectați formatul de declarație:

SELECTAȚI *|<список полей>DIN<список таблиц>

Ordinea specificată a frazelor din instrucțiunea select nu poate fi modificată, dar nu sunt necesare toate părțile acesteia. Clauzele obligatorii includ doar clauzele select și din. Toate celelalte părți ale operatorului pot fi utilizate la discreția programatorului. Explicaţie:

□ Expresie Selectați:

Prezența cuvintelor cheie toate(implicit) înseamnă că tabelul rezultat include toate rândurile care îndeplinesc condițiile de interogare, ceea ce poate duce la apariția rândurilor duplicate în tabelul rezultat;

Cuvânt cheie distinct conceput pentru a aduce tabelul în conformitate cu principiile teoriei relaționale, care presupune absența rândurilor duplicate;

Simbol " * " definește o situație foarte comună în care setul de rezultate include toate coloanele din tabelul de interogare original.

□ Într-o frază din este specificată o listă de tabele sursă ale interogării.

□ Într-o frază Unde sunt definite condițiile de selectare a rândurilor rezultate sau condițiile de îmbinare a rândurilor de tabele sursă, similare operației de îmbinare condiționată din algebra relațională. Următoarele predicate pot fi folosite ca condiții de selecție:

Comparații „= ,<>, >, <, >=, <=" - для сравнения результатов вы­числения двух выражений; более сложные выражения строятся с по­мощью логических операторов AND, OR, NOT; значения выражений вычисляются в порядке, который определяется приоритетом исполь­зуемых операторов и наличием скобок в выражении;

întreDARșiLA- predicatul este adevărat atunci când valoarea evaluată a expresiei se încadrează în intervalul specificat (predicatul nuîntreAșiLA adevărat atunci când valoarea comparată nu se încadrează în intervalul specificat);

în- predicatul este adevărat atunci când valoarea comparată este inclusă în setul de valori date; în acest caz, setul de valori poate fi specificat printr-o enumerare simplă sau o subinterogare încorporată (predicatul nu este adevărat atunci când valoarea comparată nu este inclusă în setul specificat);

cași nuca- predicatele, al căror sens este opus, necesită specificarea unui șablon cu care se compară valoarea dată; predicatul similar este adevărat atunci când valoarea comparată se potrivește cu modelul, iar fals în caz contrar;

ESTEnul- un predicat folosit pentru a detecta egalitatea valorii unui atribut cu o valoare nedefinită:

    <имя атрибута> ESTEnul- ia valoarea true dacă atributul specificat în acest șir are o valoare nedefinită și false, în caz contrar;

    <имя атрибута> ESTENUnul- totul se întâmplă invers.

existași nuexista Utilizat în subinterogări inline.

□ Într-o frază grupde lista câmpurilor de grupare este setată.

□ Într-o frază având se stabilesc predicatele-condiţii impuse fiecărui grup.

□ Într-o frază Ordinde este specificată o listă de câmpuri de ordonare a rezultatelor, adică o listă de câmpuri care determină ordinea de sortare în tabelul rezultat.

Standardul SQL definește conceptul de valoare NULL, care a necesitat utilizarea logicii cu trei valori, în care toate operațiile logice sunt efectuate în conformitate cu tabelul de adevăr de mai jos (Tabelul 6).

Masa 6 . tabelul de adevăr

A SI B

TRUE

1.1. Interogări simple

Cerere 1

Afișați informații despre departamentele universității.

Această sarcină se reduce la selectarea și afișarea informațiilor dintr-un tabel, iar toate rândurile și toate coloanele sale sunt supuse rezultatelor:

SELECTAȚI * DIN departament

Rezultatul unei astfel de interogări va fi un tabel care conține informații despre toate departamentele universității:

cod kaf

Numele kaf

Nom_telef

Nom_Auditoria

Col_sotr

Ivanov T.M.

Matematică generală

Makhov K L.

Ross L.T.

Firsov S.S.

Matematici aplicate

Lyakhova I.T.

Cerere 2

Afișează numerele de telefon ale departamentelor universitare.

Rezultatul unei astfel de interogări ar trebui să conțină doar două coloane: Nume_ kafși Nom_ telef, deci interogarea în sine ar trebui să arate astfel:

SELECTează Name_kaf, Nom_telef FROM kafedra

Tabel cu rezultate:

Numekaf Nomjelef

Fizica 23-34-24

Matematică generală 23-65-43

Povești 23-78-72

Diagramele 23-99-77

Matematică aplicată 23-66-62

În interogările formate mai sus, era necesar să se afișeze toate rândurile tabelului specificate în clauza from. Dacă selecția trebuie să limiteze numărul de rânduri de ieșire în funcție de o anumită condiție, atunci acest lucru poate fi realizat folosind clauza where din interogare. Puteți include una sau mai multe condiții de selecție de rând în clauza where.

Cerere 3

Afișează informații despre departamentul de grafică.

SELECT * FROM kafedra WHERE Name_kaf = „Grafice”

Răspunsul la o astfel de solicitare va conține doar un singur rând:

Kod.kaf Nume_kaf NomjelefNom_Auditoria Col_sotr Zav_kaf

004 Charts 23-99-77 385 18 Firsov C.C.

Cerere 4

Afișați informații despre departamentele universitare situate la parter, ținând cont de faptul că camerele de la parter sunt în intervalul de la 1 la 99.

Cererea va arăta astfel:

SELECTAȚI * FROM kafedra WHERE Nom_Auditoria ÎNTRE 1 ȘI 99

Rezultatul interogării:

KodjcafNume_kafNorn lelef Norn Auditoria Coi_sotr Zavkaf

002 Matematică generală 23-65-43 003 22 Makhov K.L.

matematică

În general, rândurile din tabelul rezultat sunt afișate într-o stare neordonată într-un fel. Vizualizarea și analizarea unui astfel de material nu este întotdeauna convenabilă. Clauza de ordine este folosită pentru a sorta rândurile după orice coloană. Include o listă de nume de coloane, separate prin virgulă, după care doriți să sortați informațiile afișate. Această frază trebuie întotdeauna plasată pe ultimul loc în instrucțiunea select și, dacă este prezentă, devine posibilă sortarea rândurilor în valori crescătoare (asc) sau descrescătoare (desc) ale coloanei specificate sau combinația coloanelor specificate, indiferent dacă acestea coloanele sunt prezente sau nu în tabelul rezultat.

Cererea 5

Afișați informații despre departamentele universității în formularul sortat după coloanăNume_ kafîn ordine crescătoare.

Cererea va arăta astfel:

SELECTAȚI * DIN kafedra ORDER BY Name_caf ASC

Rezultatul acestei cereri:

Kod_kaf Name_kaf Nomjelef Nom_Auditoria Col_sotr Zav kaf

004 Charts 23-E9-77 385 18 FirsovS.S.

003 Povești 23-78-72 465 16 Ross L.T.

002 General ma- 23-65-43 003 22 Makhov K.L.

subiecte

005 Aplicat 23-66-62 028 24 Lyakhova I.T.

matematică

001 Fizicieni 23-34-24 132 25 Ivanov T.M.

Este adesea util să sortați informațiile afișate în mai multe coloane pentru a îmbunătăți vizibilitatea. Pentru a face acest lucru, numele coloanelor de sortare trebuie listate separate prin virgule în ordinea clauzei. În acest caz, tabelul de ieșire va conține rânduri ordonate după prima coloană specificată în ordinea prin clauză, iar rândurile care au valori egale în această coloană vor fi ordonate după valorile celei de-a doua coloane și așa mai departe de la de la stânga la dreapta.

Top articole similare