Bevezetés a SELECT szolgáltatásba a MySQL-ben

Ebben a témakörben megismerjük a SELECT funkciót a MySQL-ben és főleg a DQL-ben, amely „Data Query Language”. Ez akkor jön a játékhoz, amikor megpróbálunk rekordokat letölteni az adatbázisból, és a „SELECT” paranccsal kezdődik. Ez a parancs sok SQL záradékkal és más funkciókkal használható a kívánt rekordok eléréséhez.

Számos SQL-parancs létezik, amelyek az alábbiakba sorolhatók:

  • DDL (adatmeghatározási nyelv)
  • DML (adatkezelési nyelv)
  • DQL (adatkérdezési nyelv)
  • DCL (adatvezérlő nyelv)
  • TCL (tranzakció-vezérlő nyelv)

Szintaxis:

1. A SELECT parancs alapszintű szintaxisa:

SELECT * FROM table_name;

Ezzel egy táblából az összes rekordot az összes attribútummal lekérheti.

SELECT column1, column2, …. FROM table_name;

Ez megadott oszlopokat tölt be a táblából, amelyeket átküldnek a lekérdezésen.

2. Ez a SELECT parancs használható az INSERT paranccsal is, amely rekordok hozzáadására szolgál a meglévő táblázathoz.

INSERT INTO table_name1 SELECT * FROM table_name2;

Itt a lekérdezés az összes rekordot lekérdezi a table_name2 fájlból, és beilleszti azokat a table_name1 fájlba.

Példák a SELECT implementálására a MySQL-ben

Tegyük fel, hogy van egy vevőtábla a következő attribútumokkal.

CUST_IDKeresztnévVezetéknévKapcsolatba lépniEmailVárosÖsszeg
1001RohitSharma9876736587Mumbai10000
1002ViratKohli8752877855Delhi60000
1003SachinTendulkar9867868678Mumbai15000
1004VirendraShewag9087788988Delhi20000

Néhány alapvető SELECT lekérdezést látunk néhány záradék felhasználásával, hogy megértsük, hogyan működik ez a parancs.

1. példa

SELECT * FROM customer;

(Ezzel egy táblából az összes rekordot az összes attribútummal lehívhatja.)

Kimenet:

CUST_IDKeresztnévVezetéknévKapcsolatba lépniEmailVárosÖsszeg
1001RohitSharma9876736587Mumbai10000
1002ViratKohli8752877855Delhi60000
1003SachinTendulkar9867868678Mumbai15000
1004VirendraShewag9087788988Delhi20000

2. példa

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

(Ez megadott oszlopokat tölt be egy táblából, amelyeket átküldnek egy lekérdezésen keresztül)

Kimenet:

CUST_IDKeresztnévVezetéknévEmailVáros
1001RohitSharmaMumbai
1002ViratKohliDelhi
1003SachinTendulkarMumbai
1004VirendraShewagDelhi

3. példa

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

(Ahol a parancs csak ezeket a rekordokat fogja letölteni, ahol a város Delhi lesz)

Kimenet:

CUST_IDKeresztnévVezetéknévEmailVáros
1002ViratKohliDelhi
1004VirendraShewagDelhi

4. példa

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

(A BETWEEN záradék olyan rekordokat ad vissza, amelyek kielégítik a lekérdezésben megadott feltételek tartományát)

Kimenet:

CUST_IDKeresztnévVezetéknévVárosÖsszeg
1001RohitSharmaMumbai10000
1003SachinTendulkarMumbai15000
1004VirendraShewagDelhi20000

5. példa

SELECT * FROM customer
ORDER BY amount DESC;

(A numerikus és a karakterlánc értékeit növekvő vagy csökkenő módon rendezik. Alapértelmezés szerint növekvő módon válogat.

Kimenet:

CUST_IDKeresztnévVezetéknévKapcsolatba lépniEmailVárosÖsszeg
1002ViratKohli8752877855Delhi60000
1004VirendraShewag9087788988Delhi20000
1003SachinTendulkar9867868678Mumbai15000
1001RohitSharma9876736587Mumbai10000

Záradékok a SELECT paranccsal

Egyéb klauzulák a SELECT paranccsal:

1. VÁLASZTÁS: Az összes rekord lehívására szolgál egy táblából.

SELECT * FROM table;

2. DISTINCT: Az összes egyedi érték beolvasására szolgál egy táblából.

SELECT DISTINCT col_name FROM table;

3. Hol: a megbocsátó feltételek a nyilvántartások visszakeresésében.

SELECT employee_id FROM employee
WHERE name = 'stella';

4. COUNT: A táblában jelenlévő rekordok számának meghatározására szolgál.

SELECT COUNT(*) FROM employee;

5. RENDELÉS: A numerikus és a karakterlánc értékeinek növekvő vagy csökkenő rendezésére szolgál. De alapértelmezés szerint növekvő sorrendben van. Ha le akarunk szállni, akkor azt meg kell adnunk az ORDER BY záradék használata után.

SELECT first_name FROM student
ORDER BY marks desc;

6. LIMIT: Ezt a lekérdezés végrehajtása után kívánt rekordok számának meghatározására használjuk. Ha az osztály 5 legfontosabb hallgatóját akarjuk, akkor az eredmények rendezése után felhasználhatjuk ezt a LIMIT-ot az 5. megadásával. Így csak az első öt rekordot fogja letölteni.

SELECT first_name FROM student
ORDER BY marks desc
LIMIT 5;

(** ORDER BY itt használható érték csökkenő sorrendben történő rendezéséhez)

7. ÉS: Ha 2 feltétel van megadva, és mindkettő teljesül egy rekordhoz, akkor csak a lekérdezés fogja letölteni azt a rekordot.

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

8. VAGY: Ha 2 feltételt adnak, és az egyik teljesül egy rekordhoz, akkor az a rekord letöltendő.

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

9. NEM: feltételekkel használva. Ha bármilyen feltétel előtt megadjuk a NEM elemet, akkor azok a rekordok, amelyek nem felelnek meg a feltételeknek, letöltendők.

SELECT employee_id FROM employee
WHERE NOT BETWEEN 1 AND 10;

10. KÖZÖT: Ez az operátor kiválaszt egy rekordot egy adott tartományon belül. Leginkább akkor használjuk, ha a dátumtartományt akarjuk meghatározni.

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: Ez az operátor lehetővé teszi számunkra, hogy több értéket adjunk meg egy WHERE záradékban.

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

12. LIKE: Ezt az operátort a WHERE záradékkal használják egy megadott minta keresésére a karakterláncot tartalmazó oszlopban.

  • 'A%' - a string kezdődik A betűvel
  • '& A' - A-val fejeződik be
  • '% A%' - A lesz a karakterlánc között
  • '_A%' - itt a második betű A lesz
  • '% A_' - Az utolsó betű második része A lesz

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

13. SUBSTRING: Egy adott karakter kiválasztására szolgál egy karakterláncból a helyzet megadásával.

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

(lekérdezi a karaktert a karakterlánc 1-5. pozíciójáról)

14. INSTR: Ez egy karakterlánc pozícióját adja vissza egy másik karakterláncban.

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

(megtalálja a „toll” helyzetét a „függetlenség” szóban)

15. CSOPORTOSÍTÁS: Ezt használják a nyilvántartások szétválasztására bizonyos feltételek alapján.

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

(Itt csoportosulnak szétválasztott alkalmazottak szerint az osztályuk alapján, akiknek fizetése meghaladja a 100 000-et.
A feltételnek mindig a HATÁROZÁS-nyilatkozatot kell tartalmaznia a GROUP BY záradékban.)

Összesített funkciók

Az alábbiakban látható a különböző összesített függvény:

1. SUM: kiszámítja az értékek összegét.

SELECT SUM(salary) FROM employee;

2. AVG: kiszámítja az átlagos értékkészletet.

SELECT AVG(salary) FROM employee;

3. MIN: Megkapja a minimális értéket egy sorozatban.

SELECT MIN(salary) FROM employee;

4. MAX: a maximális értéket adja meg egy értékkészletben.

SELECT MAX(salary) FROM employee;

Belép a SELECT szolgáltatásba a MySQL-ben

1. BELSŐ CSATLAKOZÁS: Olyan rekordokat ad vissza, amelyeknek mindkét táblában megegyező értéke van.

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

2. BALRA CSATLAKOZTATÁS: Az összes rekordot a bal oldali táblából és az egyeztetett rekordokat a jobb oldali táblából adja vissza.

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

3. JOBB CSATLAKOZÁS: Az összes rekordot a jobb oldali táblából és az egyeztetett rekordokat a bal oldali táblából adja vissza.

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

4. TELJES KÜLSŐ CSATLAKOZÁS: Az összes rekordot visszaadja, ha a bal vagy a jobb oldali meccs van.

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

Következtetés - VÁLASSZA a MySQL-ben

Ezek a fentebb tárgyalt parancsok és kikötések nagyon hasznosak valósidejű forgatókönyvekben, mivel az alapvető fogalmakat ad arra, hogyan lehet az SQL lekérdezéseket felhasználni az adatok beolvasására és manipulálására az adatbázisban. Mindezen előzetes és analitikus lekérdezések, például ablakfunkció stb. Használata során ezek a kikötések nagyon fontosak.

Ajánlott cikkek

Ez a SELECT útmutatója a MySQL-ben. Itt a Példa a SELECT MySQL-ben történő megvalósítására klauzulaival, összesített funkcióival és egyesítéseivel foglalkozik. A további javasolt cikkeken keresztül további információkat is megtudhat -

  1. Helyettesítő karakterek a MySQL-ben
  2. Mi a MySQL séma?
  3. Hogyan lehet csatlakoztatni az adatbázist a MySQL-hez?
  4. MySQL lekérdezések
  5. INSERT az Oracle-ban | Példák
  6. Példák a DISTINCT-re az Oracle-ben