Uvod u SELECT u MySQL-u

U ovoj ćemo temi naučiti o SELECT-u u MySQL-u i uglavnom u DQL-u koji je "Jezik upita podataka". To se događa kada pokušamo dohvatiti zapise iz baze podataka, a ono započinje naredbom "SELECT". Ova se naredba može koristiti s mnogim SQL rečenicama, kao i drugim funkcijama za dobivanje željenih zapisa.

Postoji mnogo vrsta SQL naredbi koje se mogu svrstati u sljedeće:

  • DDL (jezik definiranja podataka)
  • DML (jezik za obradu podataka)
  • DQL (jezik upita podataka)
  • DCL (jezik kontrole podataka)
  • TCL (jezik kontrole transakcije)

Sintaksa:

1. Osnovna sintaksa naredbe SELECT:

SELECT * FROM table_name;

Ovo će preuzeti sve zapise sa svim atributima iz tablice.

SELECT column1, column2, …. FROM table_name;

Ovo će preuzeti određene stupce iz tablice koja se prosljeđuje putem upita.

2. Ova naredba SELECT može se koristiti i sa naredbom INSERT koja se koristi za dodavanje zapisa u postojeću tablicu.

INSERT INTO table_name1 SELECT * FROM table_name2;

Ovdje će upit dohvatiti sve zapise iz table_name2 i umetnuti ih u table_name1.

Primjeri za implementaciju SELECT-a u MySQL

Razmotrimo da postoji tablica kupaca sa sljedećim atributima.

Cust_idImePrezimeKontaktE-mailGradIznos
1001RohitSharma9876736587Mumbai10000
1002ViratKohli8752877855Delhi60000
1003SachinTendulkar9867868678Mumbai15000
1004VirendraShewag9087788988Delhi20000

Vidjet ćemo neke osnovne SELECT upite koristeći neke klauzule za osnovno razumijevanje kako ova naredba radi.

Primjer 1

SELECT * FROM customer;

(Ovo će preuzeti sve zapise sa svim atributima iz tablice.)

Izlaz:

Cust_idImePrezimeKontaktE-mailGradIznos
1001RohitSharma9876736587Mumbai10000
1002ViratKohli8752877855Delhi60000
1003SachinTendulkar9867868678Mumbai15000
1004VirendraShewag9087788988Delhi20000

Primjer 2

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

(Ovo će preuzeti određene stupce iz tablice koja je proslijeđena upitom)

Izlaz:

Cust_idImePrezimeE-mailGrad
1001RohitSharmaMumbai
1002ViratKohliDelhi
1003SachinTendulkarMumbai
1004VirendraShewagDelhi

Primjer 3

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

(GDJE će naredba preuzeti samo te zapise, gdje će grad biti "Delhi")

Izlaz:

Cust_idImePrezimeE-mailGrad
1002ViratKohliDelhi
1004VirendraShewagDelhi

Primjer 4

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

(IZMEĐU klauzule vratit će se zapisi koji udovoljavaju danom rasponu uvjeta prenesenih u upitu)

Izlaz:

Cust_idImePrezimeGradIznos
1001RohitSharmaMumbai10000
1003SachinTendulkarMumbai15000
1004VirendraShewagDelhi20000

Primjer 5

SELECT * FROM customer
ORDER BY amount DESC;

(Koristi se za sortiranje i brojčanih i nizskih vrijednosti bilo u uzlaznom ili silaznom obliku. Ali prema zadanom se sortira uzlazno. Ako želimo u silaznom stanju, moramo to odrediti nakon klauzule ORDER BY)

Izlaz:

Cust_idImePrezimeKontaktE-mailGradIznos
1002ViratKohli8752877855Delhi60000
1004VirendraShewag9087788988Delhi20000
1003SachinTendulkar9867868678Mumbai15000
1001RohitSharma9876736587Mumbai10000

Odredbe s naredbom SELECT

Ostale rečenice s naredbom SELECT:

1. SELECT: Koristi se za preuzimanje svih zapisa iz tablice.

SELECT * FROM table;

2. DISTINCT: Koristi se za dohvaćanje svih jedinstvenih vrijednosti iz tablice.

SELECT DISTINCT col_name FROM table;

3. GDJE: Koristili su se opraštajući uvjeti za preuzimanje zapisa.

SELECT employee_id FROM employee
WHERE name = 'stella';

4. COUNT: koristi se za dobivanje broja zapisa koji su prisutni u tablici.

SELECT COUNT(*) FROM employee;

5. NALOG PO: Koristi se za sortiranje i brojčanih i nizskih vrijednosti bilo u uzlaznom ili silaznom obliku. No prema zadanom se razvrstava uzlazno. Ako se želimo spustiti, moramo ga specificirati nakon upotrebe rečenice ORDER BY.

SELECT first_name FROM student
ORDER BY marks desc;

6. OGRANIČENJE: koristi se za određivanje broja zapisa koji želimo nakon izvršenja upita. Ako želimo prvih 5 učenika u razredu, nakon razvrstavanja rezultata, možemo ih iskoristiti tako što ćemo odrediti 5. Tako da će donijeti samo prvih 5 zapisa.

SELECT first_name FROM student
ORDER BY marks desc
LIMIT 5;

(** NARUDŽBA korištena ovdje za sortiranje vrijednosti u silaznom redoslijedu)

7. I: Ako su postavljena dva uvjeta i oba su ispunjena za zapis, tada će taj upit dohvatiti samo upit.

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

8. ILI: Ako su postavljena dva uvjeta i jedan je ispunjen za zapis, tada će se taj zapis preuzeti.

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

9. NE: Koristi se s uvjetima. Ako odredimo NE prije bilo kakvih uvjeta, dohvatit će se zapisi koji ne zadovoljavaju te uvjete.

SELECT employee_id FROM employee
WHERE NOT BETWEEN 1 AND 10;

10. IZMEĐU: Ovaj operator odabire zapise unutar određenog raspona. To uglavnom koristimo tamo gdje želimo odrediti raspon datuma.

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: Ovaj operater omogućava nam odrediti više vrijednosti u WHERE rečenici.

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

12. kao što su: Ovaj operator se koristi s WHERE u potrazi za određeni uzorak u koloni koja sadrži niz.

  • 'A%' - niz započinje s A
  • '& A' - završava s A
  • '% A%' - A će biti između niza
  • '_A%' - Ovdje će drugo slovo biti A
  • '% A_' - Drugo iz posljednjeg slova bit će A

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

13. SUBSTRING: Koristi se za odabir određenog znaka iz niza određivanjem položaja.

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

(Donijet će lik s 1. na 5. mjesto niza)

14. INSTR: Vraća položaj niza u drugom nizu.

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

(pronaći će položaj olovke u riječi "neovisnost")

15. GRUPI PO: To se koristi za segregiranje zapisa na temelju nekih danih uvjeta.

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

(Ovdje se grupira po segregiranim zaposlenicima na temelju njihovog odjela i čija je plaća veća od 100k.
Uvjet uvijek dolazi s HAVING izjavom u GROUP BY klauzuli.)

Zbirne funkcije

Ispod je različita funkcija agregata:

1. SUM: Izračunava zbroj vrijednosti.

SELECT SUM(salary) FROM employee;

2. AVG: Izračunava prosječni skup vrijednosti.

SELECT AVG(salary) FROM employee;

3. MIN: Postavlja minimalnu vrijednost u skupu vrijednosti.

SELECT MIN(salary) FROM employee;

4. MAX: Postavlja maksimalnu vrijednost u skupu vrijednosti.

SELECT MAX(salary) FROM employee;

Pridružuje se SELECT-u u MySQL-u

1. INNER JOIN: Vraća zapise koji imaju obje podudarajuće vrijednosti u obje tablice.

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

2. LEVO JOIN: Vraća sve zapise iz lijeve tablice i podudarne zapise iz desne tablice.

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

3. PRAVO JOIN: Vraća sve zapise s desne tablice i podudarnog zapisi iz lijeve tablice.

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

4. PUNI OUTER JOIN: Vraća sve zapise ako postoji podudaranje s lijeve ili desne tablice.

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

Zaključak - ODABIR u MySQL-u

Ove naredbe i odredbe o kojima smo gore raspravljali vrlo su korisni u scenarijima u stvarnom vremenu jer pružaju osnovne koncepte kako koristiti SQL upite za dohvaćanje i manipuliranje podacima u bazi podataka. Uz to, dok koristite unaprijed i analitičke upite poput funkcije prozora itd., Ove su odredbe vrlo važne.

Preporučeni članci

Ovo je vodič za SELECT u MySQL-u. Ovdje smo raspravljali o primjeru implementacije SELECT-a u MySQL s klauzulama, agregiranim funkcijama i pridruživanjima. Možete i proći naše druge predložene članke da biste saznali više -

  1. Zamjenski znakovi u MySQL-u
  2. Što je MySQL shema?
  3. Kako spojiti bazu podataka na MySQL?
  4. MySQL upiti
  5. ULAZITE u Oracle | Primjeri
  6. Primjeri DISTINCT u Oracleu

Kategorija: