MySQL SELECT utasítás példákkal

Miben található a SELECT lekérdezés? MySQL?

A SELECT QUERY az adatok lekérésére szolgál MySQL adatbázis. Az adatbázisok tárolják az adatokat későbbi visszakeresés céljából. A célja MySQL Válassza ki, hogy az adatbázistáblákból egy vagy több olyan sort térjen vissza, amely megfelel egy adott feltételnek. A Select query használható olyan szkriptnyelveken, mint a PHP, Ruby, vagy végrehajthatja a parancssoron keresztül.

SELECT lekérdezés be MySQL

SQL SELECT utasítás szintaxisa

Ez a leggyakrabban használt SQL parancs, és a következő általános szintaxissal rendelkezik

SELECT [DISTINCT|ALL ] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition][GROUP BY fieldName(s)]  [HAVING condition] ORDER BY fieldName(s)

ITT

  • SELECT az SQL kulcsszó, amely tudatja az adatbázissal, hogy adatokat szeretne lekérni.
  • [KÜLÖNBÖZŐ | MINDEN] nem kötelező kulcsszavak, amelyek segítségével finomhangolhatók az SQL SELECT utasításból visszaadott eredmények. Ha nincs megadva semmi, akkor az ALL az alapértelmezett.
  • {*| [fieldExpression [AS newName]} legalább egy részt meg kell adni, a „*” az összes mezőt kiválasztotta a megadott táblanévből, a fieldExpression néhány számítást végez a megadott mezőkön, például számokat ad hozzá, vagy két karakterlánc-mezőt egyesít egybe.
  • FROM A tableName megadása kötelező, és tartalmaznia kell legalább egy táblát, több táblát vesszővel kell elválasztani, vagy a JOIN kulcsszóval kell összekapcsolni.
  • AHOL feltétel nem kötelező, akkor a lekérdezésből visszaadott eredményhalmazban megadható a feltételek.
  • CSOPORTOSÍT az azonos mezőértékekkel rendelkező rekordok összeállítására szolgál.
  • HOGY feltétel a feltételek megadására szolgál, amikor a GROUP BY kulcsszó használatával dolgozik.
  • RENDEZÉS az eredményhalmaz rendezési sorrendjének megadására szolgál.

*

A csillag szimbólum a táblázat összes oszlopának kiválasztására szolgál. Egy példa egy egyszerű SELECT utasításra az alábbiak szerint néz ki.

SELECT * FROM `members`;

A fenti utasítás az összes mezőt kiválasztja a tagok táblájából. A pontosvessző egy utasítás lezárása. Nem kötelező, de jó gyakorlatnak tekinthető, ha így fejezi be kijelentéseit.

Gyakorlati példák

Kattintson a letöltéshez a gyakorlati példákhoz használt myflix DB.

Megtanulhatja az .sql fájl importálását MySQL munkapad

A példákat a következő két táblázat alapján hajtjuk végre

1 táblázat: tagjai táblázat

Tagsági szám teljes_nevek nemek születési dátum valódi cím postázási cím kapcsolat_szám email
1 Janet Jones 21-07-1980 4. számú első utcai telek Privát táska +0759 253 542 XNUMX janetjones@yagoo.cm
2 Janet Smith Jones 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil férfi 12-07-1989 3. utca 34 NULL 12345 rm@tstreet.com
4 Gloria Williams 14-02-1984 2. utca 23 NULL NULL NULL

2 táblázat: filmek táblázat

film_id cím rendező év_megjelent kategória_azonosítója
1 A Karib-tenger kalózai 4 Rob Marshall 2011 1
2 Sarah Marshal elfelejtése Nicholas stoller 2008 2
3 X-Men NULL 2008 NULL
4 Kód Név Fekete Edgar Jimz 2010 NULL
5 Apa kislányai NULL 2007 8
6 angyalok és démonok NULL 2007 6
7 Davinci kód NULL 2007 6
9 Honey holdkórosok Schultz János 2005 8
16 67% bűnös NULL 2012 NULL

Taglista beszerzése

Tegyük fel, hogy az adatbázisunkból az összes regisztrált könyvtári tag listáját szeretnénk lekérni, ehhez az alább látható szkriptet használjuk.

SELECT * FROM `members`;

A fenti szkript végrehajtása MySQL munkaasztal a következő eredményeket produkálja.

Tagsági szám teljes_nevek nemek születési dátum valódi cím postázási cím kapcsolat_szám email
1 Janet Jones 21-07-1980 4. számú első utcai telek Privát táska +0759 253 542 XNUMX janetjones@yagoo.cm
2 Janet Smith Jones 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil férfi 12-07-1989 3. utca 34 NULL 12345 rm@tstreet.com
4 Gloria Williams 14-02-1984 2. utca 23 NULL NULL NULL

A fenti lekérdezésünk az összes sort és oszlopot visszaadta a tagok táblájából.

Tegyük fel, hogy csak az érdekel, hogy csak a teljes_nevek, nem, fizikai_cím és email mezőket kapjuk meg. A következő szkript segít nekünk ennek elérésében.

SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;

A fenti szkript végrehajtása MySQL munkaasztal a következő eredményeket produkálja.

teljes_nevek nemek valódi cím email
Janet Jones 4. számú első utcai telek janetjones@yagoo.cm
Janet Smith Jones Melrose 123 jj@fstreet.com
Robert Phil férfi 3. utca 34 rm@tstreet.com
Gloria Williams 2. utca 23 NULL

Filmlista beszerzése

Ne feledje, hogy a fenti beszélgetésünkben megemlítjük a SELECT utasításokban használt kifejezéseket. Tegyük fel, hogy szeretnénk lekérni egy filmlistát az adatbázisunkból. Azt szeretnénk, hogy a film címe és a filmrendező neve egy mezőben legyen. A filmrendező nevét zárójelben kell feltüntetni. Szeretnénk megtudni a film megjelenésének évét is. A következő szkript segít nekünk ebben.

SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;

ITT

  • The Concat () MySQL függvényt használjuk, hogy az oszlopok értékeit összekapcsoljuk.
  • A „Concat” sor (`title`, '(', `rendező`, ')') megkapja a címet, hozzáad egy kezdő zárójelet, majd a rendező nevét, majd hozzáadja a záró zárójelet.

A karakterlánc részei vesszővel vannak elválasztva a Concat () függvényben.

A fenti szkript végrehajtása MySQL munkapad a következő eredményhalmazt állítja elő.

Concat("cím", "(', "rendező", ")") év_megjelent
A Karib-tenger kalózai 4 (Rob Marshall) 2011
Sarah Marshal elfelejtése (Nicholas Stoller) 2008
NULL 2008
Kódnév Fekete (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey mooners (John Schultz) 2005
NULL 2012

Alias ​​mezőnevek

A fenti példa az Összefűzési kódot adta vissza az eredményeink mezőneveként. Tegyük fel, hogy leíróbb mezőnevet szeretnénk használni az eredménykészletünkben. Ennek eléréséhez az oszlop alias nevét használjuk. A következő az oszlop alias nevének alapvető szintaxisa

SELECT `column_name|value|expression` [AS] `alias_name`;

ITT

  • "SELECT ` oszlop_neve|érték|kifejezés `" a szokásos SELECT utasítás, amely lehet oszlopnév, érték vagy kifejezés.
  • "[MINT]" az opcionális kulcsszó az álnév előtt, amely a kifejezést jelöli, az érték vagy a mezőnév így kerül visszaadásra.
  • "alias_name" az az álnév, amelyet mezőnévként vissza akarunk adni az eredménykészletünkben.

A fenti lekérdezés értelmesebb oszlopnévvel

SELECT Concat(`title`, ' (', `director`, ')') AS 'Concat', `year_released` FROM `movies`;

A következő eredményt kapjuk

Concat év_megjelent
A Karib-tenger kalózai 4 (Rob Marshall) 2011
Sarah Marshal elfelejtése (Nicholas Stoller) 2008
NULL 2008
Kódnév Fekete (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey mooners (John Schultz) 2005
NULL 2012

A tagok listája a születési év megjelenítésével

Tegyük fel, hogy szeretnénk kapni egy listát az összes tagról, amely tartalmazza a tagsági számot, a teljes nevet és a születési évet, akkor a BALRA sztring függvény segítségével kinyerhetjük a születési dátumot a születési dátum mezőből. Az alábbi forgatókönyv ebben segít nekünk.

SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;

ITT

  • "BAL(`születési_dátum`,4)" a LEFT string függvény elfogadja a születési dátumot paraméterként, és csak 4 karaktert ad vissza balról.
  • "AS `születési_év" a oszlop alias neve ami vissza fog térni az eredményeinkben. Jegyezze meg a Az AS kulcsszó nem kötelező, kihagyhatja, és a lekérdezés továbbra is működni fog.

A fenti lekérdezés végrehajtása in MySQL munkapad a myflixdb ellen az alább látható eredményeket adja.

Tagsági szám teljes_nevek születési év
1 Janet Jones 1980
2 Janet Smith Jones 1980
3 Robert Phil 1989
4 Gloria Williams 1984

SQL használatával MySQL Workbench

Most használni fogjuk MySQL munkaterületet, hogy létrehozza azt a szkriptet, amely megjeleníti a kategóriatáblázatunk összes mezőnevét.

1. Kattintson jobb gombbal a Kategóriák táblázatra. Kattintson a „Sorok kiválasztása – 1000-es korlátozás” lehetőségre.

2. MySQL A workbench automatikusan létrehoz egy SQL-lekérdezést, és beilleszti a szerkesztőbe.

3. A lekérdezés eredményei megjelennek

SQL használatával MySQL Workbench

Figyeljük meg, hogy a SELECT utasítást nem magunk írtuk. MySQL munkapad generálta nekünk.

Miért használjuk a SELECT SQL parancsot, ha van MySQL Munkapad?

Most talán azon gondolkodik, hogy miért tanulja meg az SQL SELECT parancsot adatok lekérdezéséhez az adatbázisból, ha egyszerűen használhat olyan eszközt, mint pl. MySQL munkaasztalon, hogy ugyanazokat az eredményeket kapja az SQL nyelv ismerete nélkül. Természetesen lehetséges, de megtanulják a SELECT parancs használatát többet ad rugalmasság és a ellenőrzés az ön felett SQL SELECT utasítások.

MySQL a munkapad a „Lekérdezés példa szerint” QBE eszközök. Célja, hogy segítse az SQL utasítások gyorsabb generálását a felhasználói termelékenység növelése érdekében.

Az SQL SELECT parancs megtanulása lehetővé teszi a létrehozást összetett lekérdezések amelyeket nem lehet könnyen előállítani a Query by Example segédprogramokkal, mint pl MySQL munkapad.

A termelékenység javítása érdekében segítségével generálja a kódot MySQL munkapad akkor testre hogy megfeleljen az Ön igényeinek. Ez csak akkor történhet meg, ha megérti az SQL utasítások működését!

MySQL SELECT utasítás példákkal

Összegzésként

  • Az SQL SELECT kulcsszó az adatbázisból való adatok lekérdezésére szolgál, és ez a leggyakrabban használt parancs.
  • A legegyszerűbb formának a szintaxisa „SELECT * FROM tableName;”
  • Kifejezések is használhatók a select utasításban. Példa „VÁLASZTOTT mennyiség + ár az értékesítésből”
  • Az SQL SELECT parancsnak más opcionális paraméterei is lehetnek, például WHERE, GROUP BY, HAVING, ORDER BY. Később lesz szó róluk.
  • MySQL A workbench segíthet az SQL utasítások fejlesztésében, végrehajtásában és a kimeneti eredmény ugyanabban az ablakban történő előállításában.