Introduktion til MySQL Queries
Der er mange slags SQL-kommandoer, der kan kategoriseres i følgende:
- DDL (sprog til datadefinition)
- DML (Datamanipulationssprog)
- DQL (Sprog om dataforespørgsel)
- DCL (Datakontrol sprog)
- TCL (Transaktionskontrol sprog)
I denne artikel med MySQL Queries. Vi vil mest diskutere i DQL, der er "Data Query Language". Dette kommer til at spille, når vi prøver at hente poster fra databasen, og det starter med kommandoen “SELECT”. Bortset fra dette vil vi også diskutere den korte betydning af andre kategorier.
Typer af MySQL-forespørgsler
Følgende er de 5 typer forespørgsler:
DDL
Når vi udfører ændringer med den fysiske struktur i tabellen i databasen, har vi brug for DDL-kommandoer. CREATE, ALTER, RENAME, DROP, TRUNCATE osv. Kommandoer indgår i denne kategori. Disse kommandoer kan ikke rulles tilbage.
1. CREATE: Det bruges til at oprette en tabel eller database.
Forespørgsel:
CREATE table employee;
2. ALTER: Bruges til at ændre eller ændre værdier i tabellen.
Forespørgsel:
ALTER TABLE table_name
ADD COLUMN col_name;
3. RENAME: Omdøb navn på tabel eller database.
Forespørgsel:
ALTER TABLE table_name
RENAME COLUMN col_name TO new_col_name;
4. DROP: Dette fjerner poster fra en tabel såvel som strukturen af en tabel. Dette kan ikke rulles tilbage / fortrydes
Forespørgsel:
DROP TABLE IF EXISTS table_name;
5. TRUNCATE: Dette tømmer kun posterne og efterlader strukturen for fremtidige poster.
Forespørgsel:
TRUNCATE TABLE employee;
DML
Som vi kan se navnet Data Manipulation sprog, så når tabellerne / databasen er oprettet, for at manipulere noget inde i det der kræver vi DML-kommandoer. Fordelene ved at bruge disse kommandoer er, hvis der forekommer forkerte ændringer, vi kan rulle tilbage / fortryde det.
1. INSERT: Bruges til at indsætte nye rækker i tabellen.
Forespørgsel:
INSERT into employee
Values(101, 'abcd');
2. SLETT: Bruges til at slette en enkelt række eller hele poster i en tabel.
Forespørgsel:
DELETE TABLE employee;
3. UPDATE: Bruges til at opdatere eksisterende poster i en tabel.
Forespørgsel:
UPDATE employee
SET col1 = new_col
WHERE condition;
4. Fusion: Bruges til at flette to rækker.
DCL
Det giver eller ophæver brugernes adgang til databasen.
1. TILDELING: Giver adgang til brugerne
Forespørgsel:
GRANT CREATE table to user;
2. REVOKE: Tag adgang tilbage fra brugerne
Forespørgsel:
REVOKE CREATE table from user;
TCL
Dette håndterer de problemer, der er relateret til transaktionen i enhver database. Dette bruges til at rulle tilbage eller begå i databasen.
1. ROLLBACK: Bruges til at annullere eller fortryde ændringer, der er foretaget i databasen
Forespørgsel:
ROLLBACK;
2. COMMIT: Bruges til at implementere ændringer i databasen
Forespørgsel:
COMMIT;
DQL
Dataspørgselssprog består kun af SELECT-kommando, hvormed vi kan hente og hente data på grundlag af nogle forudsatte betingelser. Mange klausuler om SQL bruges med denne kommando til hentning af filtrerede data.
1. VÆLG: Bruges til at hente alle poster fra en tabel
Forespørgsel:
SELECT * FROM table;
2. DISTINCT: Bruges til at hente alle de unikke værdier fra en tabel
Forespørgsel:
SELECT DISTINCT col_name FROM table;
3. HVOR: Brugte tilgivende betingelser ved hentning af poster
Forespørgsel:
SELECT employee_id FROM employee
WHERE name = 'stella';
4. TALE: Bruges til at få antallet af poster til stede i en tabel
Forespørgsel:
SELECT COUNT(*) FROM employee;
5. BESTILLING AF: Bruges til at sortere både numeriske og strengværdier enten stigende eller faldende. Men som standard sorteres det stigende. Hvis vi vil faldende, er vi nødt til at specificere det efter brug af ORDER BY-klausulen.
Forespørgsel:
SELECT first_name FROM student
ORDER BY marks desc;
6. BEGRÆNSNING: Dette bruges til at specificere det antal poster, vi ønsker, efter at udførelsen af forespørgslen. Hvis vi vil have de top 5 studerende i en klasse, kan vi efter at have sorteret resultaterne bruge denne LIMIT ved at angive 5. Så det kun henter de top 5 poster.
Forespørgsel:
SELECT first_name FROM student
ORDER BY marks desc
LIMIT 5;
(** BESTILLING AF bruges her til sorteringsværdi i faldende rækkefølge)
7. OG: Hvis der er givet 2 betingelser, og begge er opfyldt for en post, vil kun forespørgslen hente disse poster.
Forespørgsel:
SELECT employee_id FROM employee
WHERE name = 'stella' AND city = 'Bangalore';
8. ELLER: Hvis der er givet 2 betingelser, og en af dem er opfyldt for en post, hentes denne post.
Forespørgsel:
SELECT employee_id FROM employee
WHERE department = 'IT' OR city = 'Bangalore';
9. IKKE: Brugt under forhold. Hvis vi specificerer IKKE før nogen betingelser, vil poster, der ikke opfylder betingelserne, blive hentet.
Forespørgsel:
SELECT employee_id FROM employee
WHERE NOT BETWEEN 1 AND 10;
10. MELLEM: Denne operatør vælger poster inden for et givet interval. Oftest bruger vi dette, hvor vi ønsker at specificere et interval af datoer.
Forespørgsel:
SELECT emp_id FROM employee
WHERE emp_id BETWEEN 1 AND 10;
Forespørgsel:
SELECT * FROM employee
WHERE join_date BETWEEN '2007-01-01' AND '2008-01-01';
11. IN: Denne operatør giver os mulighed for at specificere flere værdier i en WHERE-klausul.
Forespørgsel:
SELECT * FROM employee
WHERE employee_id IN (1001, 1004, 1008, 1012);
12. LIKE: Denne operatør bruges med WHERE-klausulen til at søge efter et specificeret mønster i en kolonne, der indeholder en streng. 'A%' - streng starter med A
- '& A': slutter med A
- '% A%': A vil være mellem strengen
- '_A%': Her er det andet bogstav A
- '% A_': Det andet fra det sidste bogstav er A
Forespørgsel:
SELECT first_name FROM table
WHERE first_name LIKE 'A%';
13. SUBSTRING: Bruges til at vælge et specifikt tegn fra en streng ved at specificere en position
Forespørgsel:
SELECT SUBSTRING(customer_name, 1, 5) FROM customer_table;
(det henter karakter fra 1. til 5. position i en streng)
14. INSTR: Dette returnerer en position af en streng i en anden streng
Forespørgsel:
SELECT INSTR('independence', 'pen');
(den finder positionen 'pen' i ordet 'uafhængighed')
15. GRUPPE AF: Dette bruges til at adskille poster på basis af nogle givne betingelser
Forespørgsel:
SELECT employee_id FROM employee GROUP BY department HAVING salary > 100000;
(Her grupperes efter adskilte medarbejdere på grundlag af deres afdeling og hvis løn mere end 100k.
Tilstand kommer altid med HAVING-erklæring i GROUP BY-klausulen.)
Aggregeret funktion
16. SUM: Beregner summen af værdier
Forespørgsel:
SELECT SUM(salary) FROM employee;
17. AVG: Beregner gennemsnittet af værdien
Forespørgsel:
SELECT AVG(salary) FROM employee;
18. MIN: Henter mindsteværdien i et sæt værdier
Forespørgsel:
SELECT MIN(salary) FROM employee;
19. MAX: Henter den maksimale værdi i et sæt værdier
Forespørgsel:
SELECT MAX(salary) FROM employee;
Sammenføjninger
20. INNER JOIN: Returnerer poster, der har en matchende værdi i begge tabeller
Forespørgsel:
SELECT * FROM order
INNER JOIN customer
ON order.cust_id = customer.cust_id;
21. VENSTRE JOIN: Returnerer alle poster fra venstre tabel og de matchede poster fra højre tabel
Forespørgsel:
SELECT * FROM order
LEFT JOIN customer
ON order.cust_id = customer.cust_id;
22. RIGHT JOIN: Returnerer alle poster fra højre tabel og de matchede poster fra venstre tabel
Forespørgsel:
SELECT * FROM order
RIGHT JOIN customer
ON order.cust_id = customer.cust_id;
23. FULL OUTER JOIN: Returnerer alle poster, når der er en kamp i enten venstre eller højre tabel
Forespørgsel:
SELECT * FROM order
FULL OUTER JOIN customer
ON order.cust_id = customer.cust_id;
Konklusion
Disse kommandoer og klausuler, som vi har diskuteret ovenfor, er meget nyttige i realtidsscenarier, da det giver de grundlæggende koncepter for, hvordan man bruger SQL-forespørgsler til at hente og manipulere data i databasen. Bortset fra dette, mens du bruger forudgående og analytiske forespørgsler som vinduesfunktion osv., Er disse klausuler meget vigtige.
Anbefalede artikler
Dette er en guide til MySQL Queries. Her diskuterer vi de typer forespørgsler i MySQL, der inkluderer DDL, DML, DQL og DCL, TCL. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -
- Funktioner Af Wildcards i MySQL
- MySQL vs MySQLi
- Hvad er MySQL-database
- Hvad er MySQL Server?
- Sorteringsfunktion i Python med eksempler
- Implementér Indsæt kommando i MySQL med eksempler
- Indre del af Oracle | Lær top 6 forespørgseksempler
- Forskellige eksempler på INSERT i Oracle