ComputersProgrammering

Basic SQL-statements

SQL-standaard werd in 1992 en nog steeds in gebruik genomen. Dat hij een benchmark voor velen is geworden database management systemen. Natuurlijk, sommige fabrikanten gebruik maken van hun eigen interpretatie van de standaard. Maar in ieder systeem, zijn er nog steeds de belangrijkste componenten - SQL-statements.

introductie

Met behulp van SQL-statements in de database optreedt waarden beheer tafels en de voorbereiding van verdere analyse en display. Ze zijn een set zoekwoorden, waardoor het systeem weet wat te doen met de gegevens.

Definieer verschillende categorieën van SQL-statements:

  • definitie van database-objecten;
  • manipuleren van waarden;
  • bescherming en beheer;
  • sessie parameters;
  • Informatie over de basis;
  • statische SQL;
  • dynamische SQL.

SQL-instructies voor het manipuleren van gegevens

Deze categorie omvat de zoekwoorden waarmee u de plaatsing van de waarden in de database kan controleren.

Invoegen. Voegt een rij in een bestaande tabel. Het kan gebruikt worden als een enkele waarde of meer, bepaald door een bepaalde voorwaarde. Bijvoorbeeld:

INSERT INTO

de tabelnaam (kolom 1, naam van de kolom 2)

VALUES (waarde 1, waarde 2).

Om de operator te gebruiken SQL-instructie INSERT met meerdere waarden, gebruikt u de volgende syntaxis:

INSERT INTO

1 lijstnaam (naam van de kolom 1, kolomnaam 2)

SELECT kolomnaam 1, naam van de kolom 2

FROM tabelnaam 2

WHERE naam 2.imya kolom van de tabel 1> 2

Deze query selecteert alle gegevens in Tabel 2, die groter is dan 2 1 kolom en plakken in de eerste.

UPDATE. Zoals de naam al aangeeft, deze verklaring werkt de SQL-query gegevens in een bestaande tabel op een bepaalde basis.

bijvoorbeeld:

UPDATE tabelnaam 1

naam SET kolom = 2 "Basil"

WHERE lijstnaam 1.imya kolom 1 = 1

Deze structuur fill waarde Basil alle rijen die aan de nummer 1 in de eerste kolom.

DELETE. Hiermee verwijdert u de gegevens uit de tabel. U kunt een voorwaarde opgeven of alle rijen te verwijderen.

DELETE FROM tabelnaam

WHERE naam tablitsy.imya kolom 1 = 1

Bovenstaande query de gegevens uit de database met de waarde die in de eerste kolom te verwijderen. Hier is hoe je de hele tabel kan duidelijk:

DELETE FROM tabelnaam.

Vervolgens is het noodzakelijk om te vertellen over de SELECT-instructie. Hij is een van de belangrijkste, dus hij zal moeten een apart hoofdstuk wijden.

SELECT-instructie

Het belangrijkste doel van SELECT - selectie van data in overeenstemming met bepaalde voorwaarden. Het resultaat van zijn werk is altijd een nieuwe tabel met geselecteerde data. MS operator SQL SELECT kan worden gebruikt om verschillende verzoeken wegen. Daarom, samen met het, kunt u overwegen andere gerelateerde zoekwoorden.

Om alle gegevens symbool "*" te selecteren wordt gebruikt vanaf een bepaalde tabel.

SELECT *

FROM tabelnaam 1

Het resultaat van deze vraag zal een exacte kopie van de tabel 1 zijn.

En hier opgehaald door WHERE aandoening die trekt uit Tabel 1, zijn alle waarden groter dan 2 in kolom 1.

SELECT *

FROM tabelnaam 1

WHERE naam 1.imya kolom van de tabel 1> 2

U kunt ook opgeven in de selectie dat alleen bepaalde kolommen nodig zijn.

SELECT lijstnaam 1.imya kolom 1

FROM tabelnaam 1

Het resultaat van deze vraag zullen alle lijnen met waarden van kolom 1. Met MS SQL operators kunnen een eigen tabel maken, tijdens de vervanging, het berekenen en het substitueren van bepaalde waarden.

SELECT

lijstnaam 1.imya kolom 1

lijstnaam 1.imya kolom 2

lijstnaam 1.imya kolom 3

«=» AS EQ

lijstnaam 1.imya kolom 2 van tabel naam * 1.imya kolom 3 AS SUMMA

FROM tabelnaam 1

Deze schijnbaar complexe query haalt alle waarden van tabel 1, en maakt vervolgens een nieuwe kolom en EQ SUMMA. Eerst gaat "+" teken, in de tweede kolom gegevens van het product 2 en 3. Dit resultaat kan worden weergegeven als een tabel, om te begrijpen hoe het werkt:

kolom 1

kolom 2

kolom 3

EQ

SUMMA

Naam van het product 1

10

50

+

500

Naam van het product 2

15

100

+

1500

Als u gebruik maakt van een SELECT-instructie, kunt u meteen besteden het ordenen van gegevens op welke grond. Het maakt gebruik van het woord ORDER BY.

SELECT

lijstnaam 1.imya kolom 1

lijstnaam 1.imya kolom 2

lijstnaam 1.imya kolom 3

FROM tabelnaam 1

ORDER BY naam kolom 2

De resulterende tabel ziet er als volgt uit:

kolom 1

kolom 2

kolom 3

1

1

54

3

2

12

7

3

100

2

5

1

Dat wil zeggen, alle lijnen zijn aangebracht op zodanige wijze dat de kolom 2 waarden stijgen.

De gegevens kunnen ook worden verkregen uit meerdere tabellen. Voor de duidelijkheid, moet u eerst denken dat ze twee, sommige zijn in de database:

Table "Werknemers"

nummer

naam

achternaam

1

Vasya

Vasin

2

Petya

Petin

Table "salaris"

nummer

tarief

gecrediteerd met

1

1

10000

2

0.5

3500

Nu moet je, zoals de koppeling van de twee tafels om gemeenschappelijke waarden te krijgen. Met behulp van eenvoudige SQL-statements kan als volgt worden gedaan:

SELECT

Sotrudniki.Nomer

Sotrudniki.Imya

Zarplata.Stavka

Zarplata.Nachisleno

FROM Werknemers Salaris

WAAR Sotrudniki.Nomer = Zarplata.Nomer

Er is opgehaald uit twee verschillende tabellen van de waarden, verenigd op nummer. Het resultaat is de volgende reeks gegevens:

nummer

naam

tarief

gecrediteerd met

1

Vasya

1

10000

2

Petya

0.5

3500

Iets meer over de SELECT. Met behulp van statistische functies

Een van de fundamentele SQL SELECT-instructies kunnen sommige berekeningen in het monster te produceren. Om dit te doen, maakt hij gebruik van bepaalde functies en formules.

Bijvoorbeeld, om het aantal records uit de tabel "Werknemers" te krijgen, moet u de query:

SELECT COUNT (*) AS N

FROM Werknemers

Het resultaat is een tabel met één kolom en waarde.

N

2

functie kan worden gebruikt in de query, berekenen een maximumbedrag en minimumwaarden en gemiddeld. Om dit te doen, worden de zoekwoorden gebruikt SUM, MAX, MIN, AVG.

Zo is het nodig om een monster van de reeds bekende "salaris" table houden:

nummer

tarief

gecrediteerd met

1

1

10000

2

0.5

3500

U kunt een dergelijk verzoek toe te passen en te zien wat er gebeurt:

SELECT

SUM (Zarplata.Nachisleno) AS SUMMA

MAX (Zarplata.Nachisleno) AS MAX

MIN (Zarplata.Nachisleno) AS MIN

AVG (Zarplata.Nachisleno) AS SRED

FROM Salaris

De finaletafel is als volgt:

SUMMA

MAX

MIN

SRED

13500

10000

3500

6750

Dat is de manier, kunt u kiezen uit een database vereiste waarden on the fly om een berekening van de verschillende functies uit te voeren.

Union, kruising en verschil

Combineer meerdere query's in SQL

SELECT Sotrudniki.Imya

FROM Werknemers

WHERE Sotrudniki.Nomer = 1

UNION

SELECT Sotrudniki.Imya

FROM Werknemers Salaris

WHERE Zarplata.Nomer = 1

Hierbij moet worden bedacht dat in deze vereniging tabel compatibel moet zijn. Dat wil zeggen, hebben hetzelfde aantal kolommen.

De syntaxis van de SELECT-instructie en de procedure voor de verwerking

Het eerste wat selecteert, bepaalt het gebied van waaruit het de gegevens zal nemen. Om dit te doen, gebruikt u het trefwoord FROM. Indien niet opgegeven, wat te kiezen.

U kunt dan presenteren de SQL-instructie WHERE. Met de hulp van SELECT loopt door elke rij van de tafel en controleert de gegevens voor de naleving van de aandoening.

Als de query een groep is, dan is er de combinatie van waarden van deze parameters.

Operators om te vergelijken gegevens

Ze hebben verschillende soorten. In SQL kunnen vergelijkingsoperatoren test verschillende soorten waarden.

  • "=". Geeft aan, zoals je wel kan raden, de gelijkheid van de twee uitdrukkingen. Zo is reeds toegepast in de voorbeelden hierboven - WHERE Zarplata.Nomer = 1.

  • ">". Groter-dan-teken. Indien de waarde van de linkerzijde van de formule groter dan de logische TRUE wordt teruggevoerd en de voorwaarde is voldaan.

  • "<". Minder dan teken. Keer de vorige operator.

  • Tekenen van "<=" en "> =". Het verschilt van eenvoudige operatoren meer of minder is dat bij gelijke operanden voorwaarde is ook waar.

  • "<>". Kan me niet schelen. De aandoening wordt beschouwd als TRUE, als slechts één operand niet gelijk is aan de andere. Hij heeft nog een interpretatie - "! =".

LIKE

Vertaal dit zoekwoord kan worden als "vergelijkbaar." LIKE operator in SQL benadering wordt toegepast op hetzelfde principe - voert een vraag van een sjabloon. Dat wil zeggen, kunt u de sample gegevens uit de database met behulp van reguliere expressies uit te breiden.

Bijvoorbeeld, het zet een dergelijke taak: van de reeds bekende base "personeel" om alle mensen van wie de naam eindigt met "I" te krijgen. Dan is de vraag kan als volgt worden samengesteld:

SELECT *

FROM Werknemers

WHERE naam als `% I`

Procent teken in dit geval betekent het masker, dat wil zeggen een willekeurig karakter, en hun aantal. En in de brief: "Ik» SQL bepaalt dat het laatste teken zo te zijn.

CASE

Deze verklaring SQL Server is een implementatie van multiple choice. Het lijkt op een switch-statement in vele programmeertalen. CASE statement in SQL wordt een actie uitgevoerd op een aantal voorwaarden.

Bijvoorbeeld, selecteert u de tabel "salaris" maximale en minimale waarden.

nummer

tarief

gecrediteerd met

1

1

10000

2

0.5

3500

Dan is de vraag kan als volgt worden samengesteld:

SELECT *

FROM Salaris

WAAR GEVAL WANNEER SELECT MAX (Charged) THEN Maximum

WANNEER SELECT MIN (Charged) THEN Minimum

eindresultaat

in de "geladen" kolom in deze context, het systeem zoekt naar de maximale en minimale waarde. Vervolgens worden met END veld dat "totaal", die wordt geregistreerd in het "maximale" of "minimum" afhankelijk van het resultaat van de aandoening.

Trouwens, in SQL is er een compactere vorm van CASE - COALESCE.

definition data

Met deze weergavemodus kunt u een verscheidenheid aan commodes uit te voeren - maken, verwijderen, wijzigen, en werken met indexen.

De eerste, die overwegen waard is - CREATE TABLE. Hij doet niets anders dan het maken van een tafel. Als u typt CREATE TABLE query, zal er niets gebeuren, want je moet nog een aantal parameters op te geven.

Bijvoorbeeld, om de bekende tabel te maken "Werknemers" wil het volgende commando gebruiken:

CREATE TABLE Medewerkers

(ID-nummer (10) NOT NULL

Naam varchar (50) NOT NULL

Achternaam varchar (50) NOT NULL)

In dit verzoek, tussen haakjes onmiddellijk gedefinieerde veldnamen en hun types, evenals de vraag of het kan NULL zijn.

DROP TABLE

Voert een eenvoudige taak - het verwijderen van de tafel. Het heeft een extra optie als bestaat. Het absorbeert een fout bij het verwijderen, indien de vereiste tabel niet bestaat. Toepassingsmogelijkheden:

DROP TABLE werknemers als bestaat.

CREATE INDEX

In SQL, is er een systeem van indices, die sneller toegang tot gegevens mogelijk maakt. In het algemeen is het een link die verwijst naar een bepaalde kolom. Een index kan een eenvoudig verzoek te zijn:

CREATE INDEX nazvanie_indeksa

ON nazvanie_tablitsy (nazvanie_stolbtsa)

Met deze uitspraak in T-SQL, Oracle, PL SQL en vele andere interpretaties technologieën.

ALTER TABLE

Zeer functionele operator met tal van opties. In het algemeen is de verandering produceert een structuur definitie en toewijzing tafels. Operator wordt gebruikt in Oracle SQL, Postgres, en vele anderen.

Er wordt nu gepresenteerd met verschillende opties met behulp van ALTER TABLE.

  • ADD. Voert de toevoeging van een kolom in een tabel. Syntax hem dit: ALTER TABLE ADD nazvanie_tablitsy nazvanie_stolbtsa tip_hranimyh_dannyh. Kan een parameter hebben ZO NIET BESTAAT, waarin een fout te onderdrukken als er een kolom die al heeft gecreëerd;

  • DROP. Verwijdert kolom. IF BESTAAT wordt ook voltooid, die een fout zeggend dat de gevraagde kolom niet bestaat zal genereren;

  • CHANGE. Gebruikt om het veld opgegeven naam wijzigen. Voorbeeld gebruik: ALTER TABLE CHANGE nazvanie_tablitsy oldName NEW_NAME;

  • Wijzigen. Dit commando zal het type van een bepaalde kolom en extra attributen veranderen. En het wordt gebruikt als volgt: ALTER TABLE MODIFY nazvanie_tablitsy nazvanie_stolbtsa datatype attributen;

CREATE VIEW

In SQL, is er zoiets als een idee. Kortom, het is een soort virtuele tabel met de gegevens. Het wordt gevormd als gevolg van het monster met behulp van de taal SQL SELECT-instructie. Bekeken kan toegang tot de database te beperken om ze te verbergen, om de echte kolom namen te vervangen.

Het aanmaken vindt plaats door een eenvoudige query:

CREATE VIEW naam te zien zoals SELECT FROM * tabelnaam

Bemonstering kan plaatsvinden als gehele databank als geheel en in een bepaalde toestand.

Een beetje over de functies

In SQL-query's maken vaak gebruik van verschillende ingebouwde functies die u in staat om te communiceren met de gegevens en zet ze op de vlieg. Het is het overwegen waard hen, want ze zijn een integraal onderdeel van een gestructureerde taal.

  • Tellen. Produceert tellen rijen of vermeldingen in een bepaalde tabel. Als optie kunt u de naam van de kolom, dan wordt de data zal worden genomen van hem op te geven. SELECT COUNT * FROM Werknemers;

  • AVG. Deze functie geldt alleen voor kolommen met numerieke gegevens. Het resultaat is de bepaling van het rekenkundig gemiddelde van alle waarden;

  • MIN en MAX. Deze functies worden al gebruikt in dit artikel. Ze definiëren de maximale en minimale waarden van de kolom;

  • SUM. Het is simpel - de functie berekent de som van de waarden in een kolom. Het wordt uitsluitend gebruikt voor het numerieke data type. Het toevoegen van het verzoek parameter DISTINCT, zal alleen unieke waarden worden toegevoegd;

  • ROUND. Functie afronden decimale gebroken getallen. De syntaxis wordt gebruikt door de naam van de kolom en het aantal cijfers achter de komma;

  • LEN. Een eenvoudige functie die de lengte van de kolom berekent. Het resultaat zal een nieuwe tabel met het aantal karakters;

  • NU. Dit sleutelwoord wordt gebruikt om de huidige datum en tijd te berekenen.

extra operators

Vele voorbeelden van de SQL-statements zijn trefwoorden die kleine taken uit te voeren, maar toch monster of de database activiteit aanzienlijk te vereenvoudigen.

  • AS. Het wordt gebruikt wanneer u wilt visueel te regelen het resultaat van het toewijzen van de opgegeven naam om een tafel te krijgen.

  • TUSSEN. Een zeer handig hulpmiddel voor bemonstering. Duidt het bereik van waarden, zoals de noodzaak om de gegevens te verkrijgen. De invoerparameter ontvangt van en een nummerreeks gebruikt;.

  • NOT. Operator geeft het tegenovergestelde van de expressie.

  • TRUNCATE. Verwijdert de data van het basisdeel. Verschillend van de marktdeelnemers die gegevens na het gebruik ervan onmogelijk te herstellen. Het is vermeldenswaard dat de uitvoering van een bepaald zoekwoord in verschillende SQL kunnen verschillende interpretaties. Dus voordat u probeert te TRUNCATE, beter kennis te maken met de achtergrond informatie te gebruiken.

  • LIMIT. Stelt het aantal uitgangslijnen. De bijzonderheid van de operator dat het altijd zich aan het einde. Het duurt één verplichte en één optionele parameter. De eerste geeft aan hoeveel rijen met de geselecteerde gegevens te laten zien. En als de tweede, dan is de operator werkt in zowel het bereik van waarden.

  • UNION. Zeer gebruiksvriendelijk operator om meerdere query's te combineren. Hij heeft al voldaan aan een van de voorbeelden van in dit artikel. U kunt de rijen weer te geven uit meerdere tabellen, UNION ze te combineren voor een handiger gebruik. Syntax hem dit: SELECT column_name FROM tabel UNION SELECT FROM imya_drugogo_stolbtsa imya_drugoy tafel. Het resultaat is een overzichtstabel van de Verenigde eisen.

  • PRIMARY KEY. Vertaald als "primaire sleutel." Eigenlijk is dat dergelijke terminologie referentiematerialen. Hij is een unieke identificatiecode voor de rij. Het wordt gebruikt, in de regel bij het maken van een tabel naar het veld dat het zal bevatten geven.

  • STANDAARD. Net als de vorige exploitant, die wordt gebruikt bij de uitvoering van het creëren van een query. Het definieert de standaardwaarde die wordt opgevuld wanneer het veld wordt gecreëerd.

Een paar tips om een platform te ontwikkelen voor het werken met SQL

  1. NULL. Beginnende programmeurs, en niet alleen bij de voorbereiding van aanvragen vaak vergeten over de beschikbaarheid van NULL-waarden. Hierdoor code fout kruipt, die moeilijk op te sporen in het debuggen. Wanneer derhalve een tabel, of berekend moet monsterwaarden stil te staan, en of NULL optreden rekening wordt gehouden met de query gebied.

  2. Memory. In dit artikel kregen we een aantal functies kan uitvoeren, taken. Bij het ontwerpen van de shell te werken met de database, kunt u "opwegen tegen de" berekening van de eenvoudige uitdrukkingen op database management systemen. In sommige gevallen, dit geeft een belangrijke impuls in de prestaties.

  3. Beperkingen. Als u wilt uit de database met duizenden rijen slechts twee te krijgen, is het noodzakelijk om operators gebruiken, zoals LIMIT of TOP. Geen behoefte om gegevens op te halen door middel van de schil van de taalontwikkeling.

  4. Sluit. Na ontvangst van de gegevens van meerdere tafels, veel programmeurs beginnen om ze samen te verminderen envelop geheugen betekent. Maar waarom? Immers, kunt u een verzoek in waarin het zal allemaal aanwezig zijn te maken. Je hoeft niet om de code een keer te schrijven en te reserveren extra geheugen in het systeem.

  5. Sorteren. Als het mogelijk is om de regeling toe te passen in het verzoek, dat wil zeggen, het DBMS krachten, is het nodig om het te gebruiken. Dit zal sterk op te slaan op de middelen als het programma of dienst.

  6. Veel verzoeken. Als u te veel records invoegen in de juiste volgorde, dan optimalisatie moeten overwegen het invoegen van packet-gegevens één verzoek. Dit zal ook het verhogen van de prestaties van het hele systeem.

  7. Zorgvuldige plaatsing van de gegevens. Voor het opstellen van de basisstructuur moeten nadenken over hoe en of een dergelijk aantal tabellen en velden nodig. Misschien is er een manier om ze te combineren, of geef sommige. Heel vaak programmeurs gebruik maken van grote hoeveelheden data overal en nooit gebruikt worden.

  8. Types. Om ruimte te besparen en middelen nodig die gevoelig zijn voor de soorten gegevens gebruikt te worden. Als u kunt profiteren van een minder "zware" voor het type geheugen, moet je zijn naam te gebruiken. Bijvoorbeeld, indien bekend is dat dit veld een numerieke waarde ten hoogste 255, waarom het gebruik van 4 bytes INT indien er tinyint 1 byte.

conclusie

Tot slot moet worden opgemerkt dat de taal is opgebouwd SQL-query's is nu vrijwel overal worden gebruikt - websites, web services, desktop software, mobiele toepassingen. Daarom zal SQL kennis helpen alle sectoren van de ontwikkeling.

Echter, wijziging van de moedertaal standaard soms van elkaar verschillen. Bijvoorbeeld, PL SQL-operators andere syntax te hebben dan in SQL Server. Dus voordat je beginnen met het ontwikkelen met deze technologie, is het noodzakelijk om kennis te maken met door richtlijnen.

In de toekomst tegenhangers, die de SQL-functionaliteit en prestaties kon overtreffen, is het onwaarschijnlijk om te verschijnen, dus dit bereik is nogal een veelbelovende niche voor een programmeur.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 birmiss.com. Theme powered by WordPress.