Introducere în SELECT în MySQL

În acest subiect, vom învăța despre SELECT în MySQL și mai ales în DQL, care este „Language Query Language”. Aceasta se joacă atunci când încercăm să preluăm înregistrări din baza de date și începe cu comanda „SELECT”. Această comandă poate fi folosită cu multe clauze SQL, precum și cu alte funcții pentru a obține înregistrări dorite.

Există multe tipuri de comenzi SQL care pot fi clasificate în următoarele:

  • DDL (limbajul de definire a datelor)
  • DML (limbajul de manipulare a datelor)
  • DQL (limbaj de interogare a datelor)
  • DCL (limbaj de control al datelor)
  • TCL (limbajul de control al tranzacțiilor)

Sintaxă:

1. Sintaxa de bază a comenzii SELECT:

SELECT * FROM table_name;

Aceasta va obține toate înregistrările cu toate atributele dintr-un tabel.

SELECT column1, column2, …. FROM table_name;

Aceasta va aduce coloane specificate dintr-un tabel care este trecut prin interogare.

2. Această comandă SELECT poate fi de asemenea folosită cu comanda INSERT care este utilizată pentru adăugarea de înregistrări la tabelul existent.

INSERT INTO table_name1 SELECT * FROM table_name2;

Aici interogarea va prelua toate înregistrările din table_name2 și le va introduce în table_name1.

Exemple de implementare SELECT în MySQL

Să considerăm că există o tabelă de clienți cu următoarele atribute.

Cust_idNumeNumele de familiea lua legaturaE-mailOrașCantitate
1001RohitSharma9876736587Mumbai10000
1002ViratKohli8752877855Delhi60, 000
1003SachinTendulkar9867868678Mumbai15000
1004VirendraShewag9087788988Delhi20000

Vom vedea câteva interogări de bază SELECT folosind câteva clauze pentru înțelegerea de bază a modului în care funcționează această comandă.

Exemplul # 1

SELECT * FROM customer;

(Aceasta va aduce toate înregistrările cu toate atributele dintr-un tabel.)

ieşire:

Cust_idNumeNumele de familiea lua legaturaE-mailOrașCantitate
1001RohitSharma9876736587Mumbai10000
1002ViratKohli8752877855Delhi60, 000
1003SachinTendulkar9867868678Mumbai15000
1004VirendraShewag9087788988Delhi20000

Exemplul # 2

SELECT cust_id, first_name, last_name, email, city
FROM customer;

(Aceasta va obține coloane specificate dintr-un tabel care este trecut printr-o interogare)

ieşire:

Cust_idNumeNumele de familieE-mailOraș
1001RohitSharmaMumbai
1002ViratKohliDelhi
1003SachinTendulkarMumbai
1004VirendraShewagDelhi

Exemplul # 3

SELECT cust_id, first_name, last_name, email, city FROM customer
WHERE city = 'Delhi';

(UNDE comanda va prelua acele înregistrări, unde orașul va fi „Delhi”)

ieşire:

Cust_idNumeNumele de familieE-mailOraș
1002ViratKohliDelhi
1004VirendraShewagDelhi

Exemplul # 4

SELECT cust_id, first_name, last_name, city, amount FROM customer
WHERE amount BETWEEN 5000 AND 25000;

(Clauza DINTRE va returna înregistrări care îndeplinesc intervalul dat de condiție trecut în interogare)

ieşire:

Cust_idNumeNumele de familieOrașCantitate
1001RohitSharmaMumbai10000
1003SachinTendulkarMumbai15000
1004VirendraShewagDelhi20000

Exemplul # 5

SELECT * FROM customer
ORDER BY amount DESC;

(Folosit pentru a sorta atât valorile numerice, cât și cele de șir, fie în mod ascendent, fie în descrescător. Dar în mod implicit, se sortează în ordine ascendentă. Dacă dorim să descrescem, atunci trebuie să o specificăm după utilizarea clauzei ORDER BY)

ieşire:

Cust_idNumeNumele de familiea lua legaturaE-mailOrașCantitate
1002ViratKohli8752877855Delhi60, 000
1004VirendraShewag9087788988Delhi20000
1003SachinTendulkar9867868678Mumbai15000
1001RohitSharma9876736587Mumbai10000

Clauze cu comanda SELECT

Alte clauze cu comanda SELECT:

1. SELECT: Folosit pentru a prelua toate înregistrările dintr-un tabel.

SELECT * FROM table;

2. DISTINCT: Se folosește pentru a obține toate valorile unice dintr-un tabel.

SELECT DISTINCT col_name FROM table;

3. UNDE: Condiții de iertare folosite în regăsirea înregistrărilor.

SELECT employee_id FROM employee
WHERE name = 'stella';

4. COUNT: Folosit pentru a obține numărul de înregistrări prezente într-un tabel.

SELECT COUNT(*) FROM employee;

5. COMANDĂ BY: Se folosește pentru a sorta atât valorile numerice cât și cele de șir, fie în mod ascendent, fie în descrescătoare. Dar implicit, acesta sortează în mod ascendent. Dacă dorim să coborâm, atunci trebuie să o specificăm după utilizarea clauzei ORDER BY.

SELECT first_name FROM student
ORDER BY marks desc;

6. LIMIT: Acesta este utilizat pentru a specifica numărul de înregistrări pe care le dorim după executarea interogării. Dacă dorim primii 5 studenți ai unei clase, atunci după sortarea rezultatelor, putem folosi acest LIMIT precizând 5. Astfel încât să aducă doar primele 5 înregistrări.

SELECT first_name FROM student
ORDER BY marks desc
LIMIT 5;

(** COMANDĂ BY utilizat aici pentru sortarea valorii în ordine descrescătoare)

7. ȘI: Dacă sunt date 2 condiții și ambele sunt îndeplinite pentru o înregistrare, atunci numai interogarea va primi înregistrările respective.

SELECT employee_id FROM employee
WHERE name = 'stella' AND city = 'Bangalore';

8. SAU: Dacă sunt date 2 condiții și una dintre ele este îndeplinită pentru o înregistrare, acea înregistrare va fi preluată.

SELECT employee_id FROM employee
WHERE department = 'IT' OR city = 'Bangalore';

9. NU: Folosit cu condiții. Dacă specificăm NU înainte de orice condiții, înregistrările care nu îndeplinesc condițiile vor fi preluate.

SELECT employee_id FROM employee
WHERE NOT BETWEEN 1 AND 10;

10. DINTRE: Acest operator selectează înregistrările într-un interval dat. Mai ales folosim acest lucru în cazul în care dorim să specificăm o serie de date.

SELECT emp_id FROM employee
WHERE emp_id BETWEEN 1 AND 10;

SELECT * FROM employee
WHERE join_date BETWEEN '2007-01-01' AND '2008-01-01';

11. IN: Acest operator ne permite să specificăm mai multe valori într-o clauză WHERE.

SELECT * FROM employee
WHERE employee_id IN (1001, 1004, 1008, 1012);

12. LIKE: Acest operator este utilizat cu clauza WHERE pentru a căuta un model specificat într-o coloană care conține șirul.

  • „A%” - șirul începe cu A
  • „& A” - se termină cu A
  • '% A%' - A va fi între șir
  • '_A%' - A doua literă va fi A
  • '% A_' - A doua din ultima literă va fi A

SELECT first_name FROM table
WHERE first_name LIKE 'A%';

13. SUBSTRING: Folosit pentru a alege un anumit personaj dintr-un șir, specificând poziția.

SELECT SUBSTRING(customer_name, 1, 5) FROM customer_table;

(va obține un caracter de la 1 la 5a poziție a unui șir)

14. INSTR: Aceasta returnează o poziție a unui șir într-un alt șir.

SELECT INSTR('independence', 'pen');

(va găsi poziția „stilou” în cuvântul „independență”)

15. GROUP BY: Acesta este utilizat pentru a separa înregistrările pe baza unor condiții date.

SELECT employee_id FROM employee GROUP BY department HAVING salary > 100000;

(Aici se grupează pe angajați segregați pe baza departamentului lor și al căror salariu este mai mare de 100k.
Condiția vine întotdeauna cu declarația HAVING din clauza GROUP BY.)

Funcții agregate

Mai jos este diferită funcție de agregat:

1. SUMĂ: calculează suma valorilor.

SELECT SUM(salary) FROM employee;

2. AVG: calculează setul mediu de valori.

SELECT AVG(salary) FROM employee;

3. MIN: Obține valoarea minimă într-un set de valori.

SELECT MIN(salary) FROM employee;

4. MAX: Obține valoarea maximă într-un set de valori.

SELECT MAX(salary) FROM employee;

Se înscrie în SELECT în MySQL

1. INNER JOIN: returnează înregistrările care au o valoare potrivită în ambele tabele.

SELECT * FROM order
INNER JOIN customer
ON order.cust_id = customer.cust_id;

2. LEFT JOIN: returnează toate înregistrările din tabelul din stânga și înregistrările potrivite din tabelul din dreapta.

SELECT * FROM order
LEFT JOIN customer
ON order.cust_id = customer.cust_id;

3. ÎNREGISTRARE DREPTĂ: returnează toate înregistrările din tabelul din dreapta și înregistrările potrivite din tabelul din stânga.

SELECT * FROM order
RIGHT JOIN customer
ON order.cust_id = customer.cust_id;

4. FULL OUTER JOIN: returnează toate înregistrările atunci când există o potrivire fie pe tabelul din stânga, fie din dreapta.

SELECT * FROM order
FULL OUTER JOIN customer
ON order.cust_id = customer.cust_id;

Concluzie - SELECTĂ în MySQL

Aceste comenzi și clauze despre care am discutat mai sus sunt foarte utile în scenarii în timp real, deoarece oferă conceptele de bază ale modului de utilizare a interogărilor SQL pentru a obține și manipula datele din baza de date. În afară de acest lucru, în timp ce se utilizează interogări avansate și analitice, cum ar fi funcția de fereastră etc, aceste clauze sunt foarte importante.

Articole recomandate

Acesta este un ghid pentru SELECT în MySQL Aici vom discuta despre Exemplul pentru a implementa SELECT în MySQL cu Clauze, Funcții Agregate și Uniri. Puteți parcurge și alte articole sugerate pentru a afla mai multe -

  1. Wildcards în MySQL
  2. Ce este schema MySQL?
  3. Cum să conectați baza de date la MySQL?
  4. Întrebări MySQL
  5. INSERTĂ în Oracle | Exemple
  6. Exemple de DISTINCT în Oracle