30 voorbeelden van SQL-query's

30 Voorbeelden Van Sql Query S



De volledige vorm van SQL is de Structured Query-taal. Het is een erg handig hulpmiddel om toegang te krijgen tot de structuur en de gegevens van de database of deze te wijzigen. Veel toepassingen hebben de database nodig om de benodigde gegevens permanent in een database op te slaan in een gestructureerd formaat. MySQL, Oracle, SQL Server, enz. zijn populaire databases om de gegevens van de applicatie op te slaan. Ze zijn essentieel om de basisprincipes van SQL te leren om toegang te krijgen tot de inhoud van de database of deze te wijzigen. Het basisgebruik van de SQL-statements op een MariaDB-database wordt in deze zelfstudie getoond aan de hand van 30 SQL-queryvoorbeelden.

Vereisten

U moet de databaseserver met de client installeren voordat u de voorbeelden in deze zelfstudie oefent. In deze zelfstudie worden de MariaDB-databaseserver en -client gebruikt.

1. Voer de volgende opdrachten uit om het systeem bij te werken:







$ sudo apt-get-update

2. Voer de volgende opdracht uit om de MariaDB-server en -client te installeren:



$ sudo apt-get install mariadb-server mariadb-client

3. Voer de volgende opdracht uit om het beveiligingsscript voor de MariaDB-database te installeren:



$ sudo mysql_secure_installation

4. Voer de volgende opdracht uit om de MariaDB-server opnieuw op te starten:





$ sudo /etc/init.d/mariadb opnieuw opstarten

6. Voer de volgende opdracht uit om u aan te melden bij de MariaDB-server:

$ sudo mariadb -u root -p

Lijst met voorbeelden van SQL-query's



  1. Maak de databank
  2. Maak de tabellen
  3. Hernoem de tabelnaam
  4. Voeg een nieuwe kolom toe aan de tabel
  5. Verwijder de kolom uit de tabel
  6. Voeg een enkele rij in de tabel in
  7. Voeg meerdere rijen in de tabel in
  8. Lees alle specifieke velden uit de tabel
  9. Lees de tabel na het filteren van de gegevens uit de tabel
  10. Lees de tabel na het filteren van de gegevens op basis van Booleaanse logica
  11. Lees de tabel na het filteren van de rijen op basis van het gegevensbereik
  12. Lees de tabel na het sorteren van de tabel op basis van de specifieke kolommen.
  13. Lees de tabel door de alternatieve naam van de kolom in te stellen
  14. Tel het totale aantal rijen in de tabel
  15. Lees de gegevens uit meerdere tabellen
  16. Lees de tabel door de specifieke velden te groeperen
  17. Lees de tabel na het weglaten van de dubbele waarden
  18. Lees de tabel door het rijnummer te beperken
  19. Lees de tabel op basis van de gedeeltelijke overeenkomst
  20. Tel de som van het specifieke veld van de tabel
  21. Zoek de maximale en minimale waarden van het specifieke veld
  22. Lees de gegevens over het specifieke deel van een veld
  23. Lees de tabelgegevens na aaneenschakeling
  24. Lees de tabelgegevens na wiskundige berekening
  25. Maak een weergave van de tabel
  26. Werk de tabel bij op basis van de specifieke toestand
  27. Verwijder de tabelgegevens op basis van de specifieke voorwaarde
  28. Verwijder alle records uit de tabel
  29. Laat de tafel vallen
  30. Laat de database vallen

Maak de databank

Stel dat we een eenvoudige database moeten ontwerpen voor het bibliotheekbeheersysteem. Om deze taak uit te voeren, moet er een database op de server worden gemaakt die meerdere relationele tabellen bevat. Nadat u bent ingelogd op de databaseserver, voert u de volgende opdracht uit om een ​​database met de naam 'library' te maken in de MariaDB-databaseserver:

CREËREN DATABANK bibliotheek;

De uitvoer laat zien dat de bibliotheekdatabase op de server is gemaakt:

Voer de volgende opdracht uit om de database van de server te selecteren om verschillende soorten databasebewerkingen uit te voeren:

GEBRUIK bibliotheek;

De uitvoer laat zien dat de bibliotheekdatabase is geselecteerd:

Maak de tabellen

De volgende stap is het maken van de benodigde tabellen voor de database om de gegevens op te slaan. In dit deel van de zelfstudie worden drie tabellen gemaakt. Dit zijn tabellen met boeken, leden en 'lenen_info'.

  1. In de boekentabel worden alle boekgerelateerde gegevens opgeslagen.
  2. In de ledentabel wordt alle informatie opgeslagen over de leden die het boek uit de bibliotheek lenen.
  3. In de tabel loan_info wordt de informatie opgeslagen over welk boek door welk lid is geleend.

1. Boeken Tafel

Voer de volgende SQL-instructie uit om een ​​tabel met de naam 'books' te maken in de 'library'-database die zeven velden en één primaire sleutel bevat. Hier is het veld 'id' de primaire sleutel en is het gegevenstype int. Het kenmerk auto_increment wordt gebruikt voor het veld 'id'. De waarde van dit veld wordt dus automatisch verhoogd wanneer een nieuwe rij wordt ingevoegd. Het gegevenstype varchar wordt gebruikt om de stringgegevens van de variabele lengte op te slaan. De velden titel, auteur, publicatie en isbn slaan de tekenreeksgegevens op. Het gegevenstype van de velden total_copy en price is int. Deze velden slaan dus de numerieke gegevens op.

CREËREN TAFEL boeken (
ID kaart INT AUTO_INCREMENT ,
titel VARCHAR ( vijftig ) ,
auteur VARCHAR ( vijftig ) ,
publicatie VARCHAR ( 100 ) ,
isbn VARCHAR ( 30 ) ,
totale_kopie INT ,
prijs INT ,
PRIMAIRE SLEUTEL ( ID kaart ) ) ;

De uitvoer laat zien dat de tabel 'boeken' met succes is gemaakt:

2. Leden Tafel

Voer de volgende SQL-instructie uit om een ​​tabel met de naam 'members' te maken in de 'library'-database die 5 velden en één primaire sleutel bevat. Het veld 'id' heeft het kenmerk auto_increment, net als de tabel 'boeken'. Het gegevenstype van de andere velden is varchar. Deze velden slaan dus de tekenreeksgegevens op.

CREËREN TAFEL leden (
ID kaart INT AUTO_INCREMENT ,
naam VARCHAR ( vijftig ) ,
adres VARCHAR ( 200 ) ,
contact_nr VARCHAR ( vijftien ) ,
e-mailen VARCHAR ( vijftig ) ,
PRIMAIRE SLEUTEL ( ID kaart ) ) ;

De uitvoer laat zien dat de tabel 'leden' met succes is gemaakt:

3. Lenen_info Tafel

Voer de volgende SQL-instructie uit om een ​​tabel met de naam 'borrow_info' te maken in de 'library'-database die 6 velden bevat. Hier is het veld 'id' de primaire sleutel, maar het kenmerk auto_increment wordt niet gebruikt voor dit veld. Er wordt dus handmatig een unieke waarde in dit veld ingevoegd wanneer een nieuw record in de tabel wordt ingevoegd. De velden book_id en member_id zijn externe sleutels voor deze tabel; dat zijn de primaire sleutel van de tabel 'boeken' en de tabel 'leden'. Het gegevenstype van de velden 'leen_datum' en 'inleverdatum' is datum. Deze twee velden slaan de datumwaarde dus op in het formaat 'JJJJ-MM-DD'.

CREËREN TAFEL leen_info (
ID kaart INT ,
leendatum DATUM ,
boek_id INT ,
Gebruikers ID INT ,
retourdatum DATUM ,
TOESTAND VARCHAR ( 10 ) ,
PRIMAIRE SLEUTEL ( ID kaart ) ,
BUITENLANDS SLEUTEL ( boek_id ) REFERENTIES boeken ( ID kaart ) ,
BUITENLANDS SLEUTEL ( Gebruikers ID ) REFERENTIES leden ( ID kaart ) ) ;

De uitvoer laat zien dat de tabel 'borrow_info' met succes is gemaakt:

Hernoem de tabelnaam

De instructie ALTER TABLE kan voor meerdere doeleinden worden gebruikt in de SQL-instructies. Voer de volgende ALTER TABLE-instructie uit om de naam van de tabel 'borrow_info' te wijzigen in 'book_borrow_info'. Vervolgens kan de instructie SHOW tables worden gebruikt om te controleren of de naam van de tabel is gewijzigd of niet.

WIJZIGEN TAFEL leen_info HERNOEMEN NAAR boeken_lenen_info;
SHOW TAFELS ;

De uitvoer laat zien dat de tabelnaam met succes is gewijzigd en de naam van de loan_info-tabel is gewijzigd in book_borrow_info:

Voeg een nieuwe kolom toe aan de tabel

De instructie ALTER TABLE kan worden gebruikt om een ​​of meer kolommen toe te voegen of te verwijderen nadat de tabel is gemaakt. De volgende ALTER TABLE-instructie voegt een nieuw veld met de naam 'status' toe aan de tabelleden. De instructie DESCRIBE wordt gebruikt om aan te geven of de tabelstructuur is gewijzigd of niet.

WIJZIGEN TAFEL leden TOEVOEGEN TOESTAND VARCHAR ( 10 ) ;
BESCHRIJVEN leden;

De uitvoer laat zien dat een nieuwe kolom met de status 'status' is toegevoegd aan de tabel 'leden' en het gegevenstype van de tabel is varchar:

Verwijder de kolom uit de tabel

De volgende instructie ALTER TABLE verwijdert het veld met de naam 'status' uit de tabel 'members'. De instructie DESCRIBE wordt gebruikt om aan te geven of de tabelstructuur is gewijzigd of niet.

WIJZIGEN TAFEL leden DRUPPEL KOLOM TOESTAND ;
BESCHRIJVEN leden;

De uitvoer laat zien dat de kolom 'status' is verwijderd uit de tabel 'leden':

Voeg een enkele rij in de tabel in

De instructie INSERT INTO wordt gebruikt om een ​​of meer rijen in de tabel in te voegen. Voer de volgende SQL-instructie uit om een ​​enkele rij in te voegen in de tabel 'boeken'. Hier wordt het veld 'id' weggelaten uit deze query omdat het automatisch in de record wordt ingevoegd wanneer een nieuwe record wordt ingevoegd voor het kenmerk auto-increment. Als dit veld wordt gebruikt in de INSERT-instructie, moet de waarde NULL zijn.

INVOEGEN NAAR BINNEN boeken ( titel , auteur , publicatie , isbn , totale_kopie , prijs )
WAARDEN ( 'SQL in 10 minuten' , 'Ben Forta' , 'Sams-publicatie' , '784534235' , 5 , 39 ) ;

De uitvoer laat zien dat een record met succes is toegevoegd aan de tabel 'boeken':

De gegevens kunnen in de tabel worden ingevoegd met behulp van de SET-clausule, waarbij elke veldwaarde afzonderlijk wordt toegewezen. Voer de volgende SQL-instructie uit om een ​​enkele rij in te voegen in de tabel 'members' met behulp van de INSERT INTO- en SET-clausules. Het veld 'id' wordt om dezelfde reden ook weggelaten in deze query, net als in het vorige voorbeeld.

INVOEGEN NAAR BINNEN leden
SET naam = 'John Sina' , adres = '34, Dhanmondi 9/A, Dhaka' , contact_nr = '+14844731336' , e-mailen = 'john@gmail.com' ;

De uitvoer laat zien dat een record met succes is toegevoegd aan de ledentabel:

Voer de volgende SQL-instructie uit om een ​​enkele rij in te voegen in de tabel 'book_borrow_info':

INVOEGEN NAAR BINNEN boeken_lenen_info ( ID kaart , leendatum , boek_id , Gebruikers ID , retourdatum , TOESTAND )
WAARDEN ( 1 , '2023-03-12' , 1 , 1 , '2023-03-19' , 'geleend' ) ;

De uitvoer laat zien dat een record is toegevoegd aan de tabel 'book_borrow_info':

Voeg meerdere rijen in de tabel in

Soms is het nodig om veel records tegelijk toe te voegen met een enkele INSERT INTO-instructie. Voer de volgende SQL-instructie uit om drie records in de 'books'-tabel in te voegen met behulp van een enkele INSERT INTO-instructie. In dit geval wordt de VALUES-clausule eenmalig gebruikt en worden de gegevens van elk record gescheiden door komma's.

INVOEGEN NAAR BINNEN boeken ( titel , auteur , publicatie , isbn , totale_kopie , prijs )
WAARDEN
( 'SQL-kookboek (O'Reilly)' , 'Anthony Molinaro' , 'O'Reilly' , '2467777532' , 10 , 49 ) ,
( 'SQL-query's voor gewone stervelingen' , 'John Viescas' , 'Addison Wesley' , '673456234' , vijftien , 35 ) ,
( 'SQL leren' , 'Alan Beaulieu' , 'Pinguïn Boeken Ltd' , '534433222' , 12 , Vier vijf ) ;

De uitvoer laat zien dat er drie records zijn toegevoegd aan de tabel 'boeken':

Lees alle specifieke velden uit de tabel

De SELECT-instructie wordt gebruikt om de gegevens uit de 'database'-tabel te lezen. Het symbool '*' wordt gebruikt om alle velden van de tabel in de SELECT-instructie aan te duiden. Voer de volgende SQL-opdracht uit om alle records van de boekentabel te lezen:

SELECTEER * VAN boeken;

De uitvoer toont alle records van de boekentabel die 4 records bevat:

Voer de volgende SQL-opdracht uit om alle records van drie velden van de tabel 'leden' te lezen:

SELECTEER naam , e-mailen , contact_nr VAN leden;

De uitvoer toont alle records van drie velden van de tabel 'leden':

Lees de tabel na het filteren van de gegevens uit de tabel

De WHERE-clausule wordt gebruikt om de gegevens uit een tabel te lezen op basis van een of meer voorwaarden. Voer de volgende SELECT-instructie uit om alle records van alle velden van de tabel 'boeken' te lezen waarvan de naam van de auteur 'John Viescas' is.

SELECTEER * VAN boeken WAAR auteur = 'John Viescas' ;

De tabel 'boeken' bevat één record dat overeenkomt met de voorwaarde van de WHERE-component die wordt weergegeven in de uitvoer:

Lees de tabel na het filteren van de gegevens op basis van Booleaanse logica

De Booleaanse AND-logica wordt gebruikt om meerdere voorwaarden te definiëren in de WHERE-component die waar retourneert als alle voorwaarden waar retourneren. Voer de volgende SELECT-instructie uit om alle records van alle velden van de tabel 'boeken' te lezen waar de waarde van het veld total_copy meer dan 10 is en de waarde van het prijsveld kleiner is dan 45 met behulp van de logische AND.

SELECTEER * VAN boeken WAAR totale_kopie > 10 EN prijs < Vier vijf ;

De boekentabel bevat één record dat overeenkomt met de voorwaarde van de WHERE-component die wordt weergegeven in de uitvoer:

De Booleaanse OR-logica wordt gebruikt om meerdere voorwaarden te definiëren in de WHERE-component die waar retourneert als een van de voorwaarden waar retourneert. Voer de volgende SELECT-instructie uit om alle records te lezen van alle velden van de tabel 'boeken' waar de waarde van het veld total_copy meer dan 10 is of de waarde van het prijsveld meer dan 40 is.

SELECTEER * VAN boeken WAAR totale_kopie > 10 OF prijs > 40 ;

De boekentabel bevat drie records die overeenkomen met de voorwaarde van de WHERE-clausule die wordt weergegeven in de uitvoer:

De Booleaanse NOT-logica wordt gebruikt om onwaar te retourneren als de voorwaarde waar is en geeft waar weer als de voorwaarde onwaar is. Voer de volgende SELECT-instructie uit om alle records te lezen van alle velden van de tabel 'boeken' waar de waarde van het auteursveld niet 'Addison-Wesley' is.

SELECTEER * VAN boeken WAAR NIET auteur = 'Addison-Wesley' ;

De tabel 'boeken' bevat drie records die overeenkomen met de voorwaarde van de WHERE-clausule die wordt weergegeven in de uitvoer:

Lees de tabel na het filteren van de rijen op basis van het gegevensbereik

De BETWEEN-clausule wordt gebruikt om het gegevensbereik uit de databasetabel te lezen. Voer de volgende SELECT-instructie uit om alle records van alle velden van de tabel 'boeken' te lezen waar de waarde van het prijsveld tussen 40 en 50 ligt.

SELECTEER * VAN boeken WAAR prijs TUSSEN 40 EN vijftig ;

De boekentabel bevat twee records die overeenkomen met de voorwaarde van de WHERE-clausule die wordt weergegeven in de uitvoer. De boeken van de prijswaarden, 39 en 35, worden weggelaten uit de resultatenset omdat deze buiten bereik zijn.

Lees de tabel na het sorteren van de tabel

De ORDER BY-clausule wordt gebruikt om de resultatenset van de SELECT-instructie in oplopende of aflopende volgorde te sorteren. De resultatenset wordt standaard in oplopende volgorde gesorteerd als de clausule ORDER BY wordt gebruikt zonder ASC of DESC. De volgende SELECT-instructie leest de gesorteerde records uit de boekentabel op basis van het titelveld:

SELECTEER * VAN boeken VOLGORDE DOOR titel;

De gegevens van het titelveld van de tabel 'boeken' worden in de uitvoer in oplopende volgorde gesorteerd. Het boek 'SQL leren' komt alfabetisch op de eerste plaats als het titelveld van de tabel 'boeken' in oplopende volgorde is gesorteerd.

Lees de tabel door de alternatieve naam van de kolom in te stellen

De alternatieve naam van de kolom wordt in de query gebruikt om de resultatenset leesbaarder te maken. De alternatieve naam wordt ingesteld met het trefwoord 'AS'. De volgende SQL-instructie retourneert de waarden van de velden titel en auteur door de alternatieve namen in te stellen.

SELECTEER titel ALS `Boeknaam` , auteur ALS `Naam auteur`
VAN boeken;

Het titelveld wordt weergegeven met de alternatieve naam die 'Boeknaam' is en het auteursveld wordt weergegeven met de alternatieve naam die 'Auteurnaam' is in de uitvoer.

Tel het totale aantal rijen in de tabel

De COUNT() is een geaggregeerde functie van SQL die wordt gebruikt om het totale aantal rijen te tellen op basis van het specifieke veld of alle velden. Het '*' symbool wordt gebruikt om alle velden aan te geven en de COUNT(*) wordt gebruikt om alle records van de tabel te tellen.

De volgende query telt het totale aantal records van de boekentabel:

SELECTEER GRAAF ( * ) ALS `Totaal Boeken` VAN boeken;

Vier records in de tabel 'boeken' worden weergegeven in de uitvoer:

De volgende query telt het totale aantal rijen van de tabel 'members' op basis van het veld 'id':

SELECTEER GRAAF ( ID kaart ) ALS `Totaal aantal leden` VAN leden;

De tabel 'leden' heeft twee id-waarden die in de uitvoer worden afgedrukt:

Lees de gegevens uit meerdere tabellen

De vorige SELECT-instructies haalden de gegevens op uit een enkele tabel. Maar de SELECT-instructie kan worden gebruikt om de gegevens uit twee of meer tabellen op te halen. De volgende SELECT-query leest de waarden van de velden titel en auteur uit de tabel 'boeken' en de leendatum uit de tabel 'book_borrow_info'.

SELECTEER titel , auteur , leendatum
VAN boeken , boeken_lenen_info
WAAR boeken . ID kaart = boeken_lenen_info . boek_id;

De volgende uitvoer laat zien dat het boek 'SQL in 10 Minutes' twee keer is geleend en het boek 'SQL Cookbook (O'Reilly)' één keer is geleend:

De gegevens kunnen worden opgehaald uit de meerdere tabellen met behulp van verschillende typen JOINS, zoals INNER JOIN, OUTER JOIN, enz. Die niet in deze zelfstudie worden uitgelegd.

Lees de tabel door de specifieke velden te groeperen

De GROUP BY-clausule wordt gebruikt om de records uit de tabel te lezen door de rijen te groeperen op basis van een of meer velden. Dit type query wordt een samenvattingsquery genoemd. U moet meerdere rijen in de tabellen invoegen om het gebruik van de GROUP BY-clausule te controleren. Voer de volgende INSERT-instructies uit om één record in de tabel 'members' en twee records in de tabel 'book_borrow_info' in te voegen.

INVOEGEN NAAR BINNEN leden
SET naam = 'Ze Hasan' , adres = '11/A, Jigatola, Dhaka' , contact_nr = '+8801734563423' , e-mailen = 'zij@gmail.com' ;
INVOEGEN NAAR BINNEN boeken_lenen_info ( ID kaart , leendatum , boek_id , Gebruikers ID , retourdatum , TOESTAND )
WAARDEN ( 2 , '2023-04-10' , 1 , 1 , '2023-04-15' , 'Geretourneerd' ) ;
INVOEGEN NAAR BINNEN boeken_lenen_info ( ID kaart , leendatum , boek_id , Gebruikers ID , retourdatum , TOESTAND )
WAARDEN ( 3 , '20-05-2023' , 2 , 1 , '2023-05-30' , 'geleend' ) ;

Nadat u de gegevens hebt ingevoerd door de vorige query's uit te voeren, voert u de volgende SELECT-instructie uit die het totale aantal geleende boeken en de naam van het lid telt op basis van elk lid met behulp van de GROUP BY-component. Hier werkt de functie COUNT() op het veld dat wordt gebruikt om de records te hergroeperen met behulp van de GROUP BY-clausule. Het veld book_id van de tabel 'members' wordt hier gebruikt voor groepering.

SELECTEER GRAAF ( boek_id ) ALS `Totaal geleend boek` , naam ALS `Lidnaam` VAN boeken , leden , boeken_lenen_info WAAR boeken . ID kaart = boeken_lenen_info . boek_id EN leden . ID kaart = boeken_lenen_info . Gebruikers ID GROEP DOOR boeken_lenen_info . Gebruikers ID;

Volgens de gegevens van de boeken, tabellen 'leden' en 'book_borrow_info', heeft 'John Sina' 2 boeken geleend en 'Ella Hasan' 1 boek geleend.

Lees de tabel na het weglaten van de dubbele waarden

Soms worden dubbele gegevens gegenereerd in de resultatenset van de SELECT-instructie op basis van de tabelgegevens die niet nodig zijn. De volgende SELECT-instructie retourneert bijvoorbeeld de dubbele records voor de gegevens van de tabel 'book_borrow_info'.

SELECTEER naam , e-mailen
VAN leden , boeken_lenen_info
WAAR boeken_lenen_info . Gebruikers ID = leden . ID kaart;

In de uitvoer verschijnt hetzelfde record twee keer omdat het 'John Sina' -lid twee boeken heeft geleend. Dit probleem kan worden opgelost met het sleutelwoord DISTINCT. Het verwijdert de dubbele records uit het queryresultaat.

De volgende SELECT-instructie genereert unieke records van de resultatenset uit de tabellen 'members' en 'book_borrow_info' nadat de dubbele waarden zijn weggelaten met het sleutelwoord DISTINCT in de query.

SELECTEER VERSCHILLEND naam , e-mailen
VAN leden , boeken_lenen_info
WAAR boeken_lenen_info . Gebruikers ID = leden . ID kaart;

De uitvoer laat zien dat de dubbele waarde is verwijderd uit de resultatenset:

Lees de tabel door het rijnummer te beperken

Soms moet het specifieke aantal records vanaf het begin van de resultatenset, het einde van de resultatenset of het midden van de resultatenset uit de databasetabel worden gelezen door het rijnummer te beperken. Het kan op veel manieren. Voordat u de rijen beperkt, voert u de volgende SQL-instructie uit om te controleren hoeveel records er in de boekentabel staan:

SELECTEER * VAN boeken;

De uitvoer laat zien dat de boekentabel vier records heeft:

De volgende SELECT-instructie leest de eerste twee records uit de tabel 'books' met behulp van de LIMIT-clausule met de waarde 2:

SELECTEER * VAN boeken BEGRENZING 2 ;

De eerste twee records van de tabel 'boeken' worden opgehaald, wat wordt weergegeven in de uitvoer:

De FETCH-clausule is het alternatief van de LIMIT-clausule en het gebruik ervan wordt getoond in de volgende SELECT-instructie. De eerste 3 records van de 'books'-tabel worden opgehaald met behulp van de FETCH FIRST 3 ROWS ONLY-component in de SELECT-instructie:

SELECTEER * VAN boeken HALEN EERST 3 RIJEN ALLEEN ;

De uitvoer toont de eerste 3 records van de tabel 'boeken':

Twee platen van de 3 e.d rij van de boekentabel worden opgehaald door de volgende SELECT-instructie uit te voeren. De LIMIT-clausule wordt hier gebruikt met de waarde 2, 2, waarbij de eerste 2 de beginpositie definieert van de rij van de tabel die begint te tellen vanaf 0 en de tweede 2 het aantal rijen definieert dat begint te tellen vanaf de startpositie.

SELECTEER * VAN boeken BEGRENZING 2 , 2 ;

De volgende uitvoer verschijnt na het uitvoeren van de vorige query:

De records aan het einde van de tabel kunnen worden gelezen door de tabel in aflopende volgorde te sorteren op basis van de automatisch verhoogde primaire sleutelwaarde en door de LIMIT-clausule te gebruiken. Voer de volgende SELECT-instructie uit die de laatste 2 records uit de tabel 'boeken' leest. Hier wordt de resultatenset in aflopende volgorde gesorteerd op basis van het veld 'id'.

SELECTEER * VAN boeken VOLGORDE DOOR ID kaart BESCH BEGRENZING 2 ;

De laatste twee records van de boekentabel worden weergegeven in de volgende uitvoer:

Lees de tabel op basis van de gedeeltelijke overeenkomst

De LIKE-component wordt gebruikt met het symbool '%' om de records uit de tabel op te halen door middel van gedeeltelijke afstemming. De volgende SELECT-instructie doorzoekt de records van de 'books'-tabel waar het auteursveld 'John' bevat aan het begin van de waarde met behulp van de LIKE-component. Hier wordt het symbool '%' gebruikt aan het einde van de zoekstring.

SELECTEER * VAN boeken WAAR auteur LEUK VINDEN 'John%' ;

Er bestaat slechts één record in de tabel 'boeken' die de tekenreeks 'John' bevat aan het begin van de waarde van het auteursveld.

De volgende SELECT-instructie doorzoekt de records van de tabel 'boeken' waar het publicatieveld de 'Ltd' aan het einde van de waarde bevat met behulp van de LIKE-clausule. Hier wordt het '%' -symbool gebruikt aan het begin van de zoekreeks:

SELECTEER * VAN boeken WAAR publicatie LEUK VINDEN '%Ltd' ;

Er bestaat slechts één record in de tabel 'boeken' die de tekenreeks 'Ltd' bevat aan het einde van het publicatieveld.

De volgende SELECT-instructie doorzoekt de records van de 'books'-tabel waar het titelveld de 'Queries' ergens van de waarde bevat met behulp van de LIKE-component. Hier wordt het '%' -symbool gebruikt aan beide zijden van de zoekstring:

SELECTEER * VAN boeken WAAR titel LEUK VINDEN '%Vragen%' ;

Er bestaat slechts één record in de tabel 'boeken' die de tekenreeks 'Queries' bevat in het titelveld.

Tel de som van het specifieke veld van de tabel

De SUM() is een andere handige aggregatiefunctie van SQL die de som van de waarden van elk numeriek veld van de tabel berekent. Deze functie heeft één argument nodig dat numeriek moet zijn. De volgende SQL-instructie berekent de som van alle waarden van het prijsveld van de tabel 'boeken' die gehele waarden bevat.

SELECTEER SOM ( prijs ) ALS `Totale boekprijs`
VAN boeken;

De uitvoer toont de somwaarde van alle waarden van het prijsveld van de tabel 'boeken'. Vier waarden van het prijsveld zijn 39, 49, 35 en 45. De som van deze waarden is 168.

Zoek de maximale en minimale waarden van het specifieke veld

De aggregatiefuncties MIN() en MAX() worden gebruikt om de minimum- en maximumwaarden van het specifieke veld van de tabel te achterhalen. Beide functies hebben één argument dat numeriek moet zijn. De volgende SQL-instructie vindt de minimumprijswaarde uit de tabel 'boeken', die een geheel getal is.

SELECTEER MIN ( prijs ) ALS `Boek van minimale kosten` VAN boeken;

Vijfendertig (35) is de minimumwaarde van het prijsveld dat in de uitvoer wordt afgedrukt.

De volgende SQL-instructie vindt de maximale prijswaarde uit de tabel 'boeken':

SELECTEER MAX ( prijs ) ALS `Boek van maximale kosten` VAN boeken;

Negenenveertig (49) is de maximale waarde van het prijsveld dat in de uitvoer wordt afgedrukt.

Lees het specifieke deel van de gegevens of een veld

De functie SUBSTR() wordt gebruikt in de SQL-instructie om het specifieke deel van de tekenreeksgegevens of de waarde van het specifieke veld van een tabel op te halen. Deze functie bevat drie argumenten. Het eerste argument bevat de tekenreekswaarde of een veldwaarde van een tabel die een tekenreeks is. Het tweede argument bevat de beginpositie van de substring die wordt opgehaald uit het eerste argument en het tellen van deze waarde begint vanaf 1. Het derde argument bevat de lengte van de substring die begint te tellen vanaf de startpositie.

De volgende SELECT-instructie knipt en drukt de eerste vijf tekens af van de tekenreeks 'Learn SQL Basics', waarbij de startpositie 1 is en de lengte 5:

SELECTEER SUBSTR ( 'Leer de basisprincipes van SQL' , 1 , 5 ) ALS `Subtekenreekswaarde` ;

De eerste vijf tekens van de reeks 'Learn SQL Basics' zijn 'Learn', die in de uitvoer wordt afgedrukt.

De volgende SELECT-instructie knipt en drukt de SQL af uit de tekenreeks 'Leer SQL Basics', waarbij de startpositie 7 is en de lengte 3:

SELECTEER SUBSTR ( 'Leer de basisprincipes van SQL' , 7 , 3 ) ALS `Subtekenreekswaarde` ;

De volgende uitvoer verschijnt na het uitvoeren van de vorige query:

De volgende SELECT-instructie knipt de eerste vijf tekens uit het naamveld van de tabel 'members' en drukt deze af:

SELECTEER SUBSTR ( naam , 1 , 5 ) ALS `Lidnaam` VAN leden;

De uitvoer toont de eerste vijf tekens van elke waarde van het naamveld van de tabel 'leden'.

Lees de tabelgegevens na aaneenschakeling

De functie CONCAT() wordt gebruikt om de uitvoer te genereren door een of meer velden van een tabel te combineren of de tekenreeksgegevens of de specifieke veldwaarde van de tabel toe te voegen. De volgende SQL-instructie leest de waarden van de titel-, auteur- en prijsvelden van de tabel 'boeken', en de tekenreekswaarde '$' wordt toegevoegd aan elke waarde van het prijsveld met behulp van de CONCAT()-functie.

SELECTEER titel ALS Titel , auteur ALS Auteur , CONCAT ( '$' , prijs ) ALS Prijs
VAN boeken;

De waarden van het prijsveld worden in de uitvoer afgedrukt door ze samen te voegen met de tekenreeks '$'.

Voer de volgende SQL-instructie uit om de waarden van de velden titel en auteur van de tabel 'books' te combineren met de tekenreekswaarde 'by' met behulp van de functie CONCAT():

SELECTEER CONCAT ( titel , ' door ' , auteur ) ALS `Boeknaam met auteur`
VAN boeken;

De volgende uitvoer verschijnt na het uitvoeren van de vorige SELECT-query:

Lees de tabelgegevens na een wiskundige berekening

Elke wiskundige berekening kan worden uitgevoerd op het moment dat de waarden van de tabel worden opgehaald met behulp van een SELECT-instructie. Voer de volgende SQL-instructie uit om de id, titel, prijs en kortingsprijswaarde te lezen na het berekenen van de 5% korting.

SELECTEER ID kaart , titel , prijs ALS `Normale prijs` , prijs - ( prijs * 5 / 100 ) ALS `Kortingsprijs`
VAN boeken;

De volgende uitvoer toont de normale prijs en kortingsprijs van elk boek:

Maak een weergave van de tabel

De VIEW wordt gebruikt om de query eenvoudig te maken en zorgt voor extra beveiliging van de database. Het werkt als een virtuele tabel die wordt gegenereerd uit een of meer tabellen. De methode voor het maken en uitvoeren van een eenvoudige VIEW op basis van de tabel 'members' wordt in het volgende voorbeeld getoond. De VIEW wordt uitgevoerd met behulp van de SELECT-instructie. De volgende SQL-instructie maakt een VIEW van de tabel 'members' met de velden id, name, address en contact_no. De SELECT-instructie voert de member_view uit.

CREËREN WEERGAVE lid_weergave ALS
SELECTEER ID kaart , naam , adres , contact_nr
VAN leden;

SELECTEER * VAN lid_weergave;

De volgende uitvoer verschijnt na het maken en uitvoeren van de weergave:

Werk de tabel bij op basis van de specifieke toestand

De instructie UPDATE wordt gebruikt om de inhoud van de tabel bij te werken. Als een UPDATE-query wordt uitgevoerd zonder de WHERE-component, worden alle velden die in de UPDATE-query worden gebruikt, bijgewerkt. Het is dus noodzakelijk om een ​​UPDATE-instructie te gebruiken met de juiste WHERE-component. Voer de volgende UPDATE-instructie uit om de velden name en contact_no bij te werken waarbij de waarde van het id-veld 1 is. Voer vervolgens de SELECT-instructie uit om te controleren of de gegevens correct zijn bijgewerkt of niet.

UPDATE leden
SET naam = 'Janifer' , contact_nr = '+880175621223'
WAAR ID kaart = 1 ;

SELECTEER * VAN leden;

De volgende uitvoer laat zien dat de UPDATE-instructie met succes is uitgevoerd. De waarde van het naamveld wordt gewijzigd in 'Janifer' en het veld contact_no wordt gewijzigd in '+880175621223' van het record dat de id-waarde van 1 bevat met behulp van de UPDATE-query:

Verwijder de tabelgegevens op basis van de specifieke voorwaarde

De DELETE-instructie wordt gebruikt om de specifieke inhoud of alle inhoud van de tabel te verwijderen. Als een DELETE-query wordt uitgevoerd zonder de WHERE-clausule, worden alle velden verwijderd. Het is dus noodzakelijk om de UPDATE-instructie te gebruiken met de juiste WHERE-component. Voer de volgende DELETE-instructie uit om alle gegevens uit de boekentabel te verwijderen waarvan de id-waarde 4 is. Voer vervolgens de SELECT-instructie uit om te controleren of de gegevens correct zijn verwijderd of niet.

VERWIJDEREN VAN boeken WAAR ID kaart = 4 ;
SELECTEER * VAN boeken;

De volgende uitvoer laat zien dat de DELETE-instructie met succes is uitgevoerd. De 4 e record van de boekentabel wordt verwijderd met behulp van de DELETE-query:

Verwijder alle records uit de tabel

Voer de volgende DELETE-instructie uit om alle records te verwijderen uit de tabel 'boeken' waarin de WHERE-component is weggelaten. Voer vervolgens de SELECT-query uit om de inhoud van de tabel te controleren.

VERWIJDEREN VAN boeken_lenen_info;
SELECTEER * VAN boeken_lenen_info;

De volgende uitvoer laat zien dat de tabel 'boeken' leeg is na het uitvoeren van de DELETE-query:

Als een tabel een kenmerk voor automatische verhoging bevat en alle records uit de tabel worden verwijderd, begint het veld voor automatische verhoging te tellen vanaf de laatste verhoging wanneer een nieuwe record wordt ingevoegd nadat de tabel leeg is gemaakt. Dit probleem kan worden opgelost met behulp van het TRUNCATE-statement. Het wordt ook gebruikt om alle records uit de tabel te verwijderen, maar het veld voor automatisch verhogen begint te tellen vanaf 1 nadat alle records uit de tabel zijn verwijderd. De SQL van de TRUNCATE-instructie wordt als volgt weergegeven:

AFKNOPEN boeken_lenen_info;

Laat de tafel vallen

Een of meer tabellen kunnen worden verwijderd door al dan niet te controleren of de tabel bestaat of niet. De volgende DROP-instructies verwijderen de tabel 'book_borrow_info' en de instructie 'SHOW tables' controleert of de tabel bestaat of niet op de server.

DRUPPEL TAFEL boeken_lenen_info;
SHOW TAFELS ;

De uitvoer laat zien dat de tabel 'book_borrow_info' is verwijderd.

De tabel kan worden verwijderd nadat is gecontroleerd of deze op de server bestaat of niet. Voer de volgende DROP-instructie uit om de boeken- en ledentabel te verwijderen als deze tabellen op de server bestaan. Vervolgens controleert de instructie 'SHOW tables' of de tabellen al dan niet op de server staan.

DRUPPEL TAFEL ALS BESTAAT boeken , leden;
SHOW TAFELS ;

De volgende uitvoer laat zien dat de tabellen van de server zijn verwijderd:

Laat de database vallen

Voer de volgende SQL-instructie uit om de 'bibliotheek'-database van de server te verwijderen:

DRUPPEL DATABANK bibliotheek;

De uitvoer laat zien dat de database is verwijderd.

Conclusie

De meest gebruikte voorbeelden van SQL-query's voor het maken, openen, wijzigen en verwijderen van de database van de MariaDB-server worden in deze zelfstudie getoond door een database en drie tabellen te maken. Het gebruik van verschillende SQL-instructies wordt uitgelegd met zeer eenvoudige voorbeelden om de nieuwe databasegebruiker te helpen de basisprincipes van SQL goed te leren. Het gebruik van complexe queries wordt hier weggelaten. De nieuwe databasegebruikers kunnen met elke database aan de slag nadat ze deze tutorial goed hebben gelezen.