megértés sql
3. A SQL kinyerni az adatokat táblázatok
Ebben a fejezetben megmutatjuk, hogyan információk kinyerése táblákat. Meg fogja tanulni, hogyan csökkentsük vagy átrendezni az oszlopokat, és hogyan lehet automatikusan megszünteti adatredundanciát a kimenet. Végül, akkor megtanulják, hogyan kell beállítani a feltétel (csekk), amelyek segítségével, hogy melyik táblákat használja a kimeneti karakterlánc. Ez utóbbi tulajdonság tovább a késõbbi fejezetek, és az egyik legelegánsabb és erős SQL-ben.
Létrehozása lekérdezés
MI egy kérés?
Érdeklődés - a csapat, hogy adja meg adatbázis-program, és tájékoztatja őt, hogy ő adta bizonyos információkat a táblákat a memóriában. Ez az információ általában küldött közvetlenül a számítógép vagy terminál képernyőjén, hogy használja, de a legtöbb esetben, akkor is lehet küldeni a nyomtatóra, fájlba menthető (mint egy tárgy a számítógép memóriájában) vagy bemutatott háttér-információkat egy másik csapat vagy egy folyamat.
A PÁLYÁZAT kérés?
Minden lekérdezés SQL állhat egyetlen paranccsal. A szerkezet a parancs megtévesztően egyszerű, mert meg kell bővíteni úgy, hogy végre nagyon összetett értékelést és adatfeldolgozást. Ez a parancs az úgynevezett - SELECT (Választ).
SELECT TEAM
A legegyszerűbb formájában, a SELECT parancs egyszerűen utasítja az adatbázis információk kinyerése az asztalra. Például, akkor megjelenik egy táblázat Merchants írja be az alábbi: Output erre lekérdezés 3.1 ábrán látható. 3.1 ábra: SELECT parancs
Más szóval, ez a parancs csak megjeleníti az összes adatot a táblázatban. A legtöbb program is nyújt oszlopfejlécekre mint fent, de néhány lehetővé teszi a részletes formázási kibocsátás, de ez kívül esik a standard leírás. Van egy magyarázat minden egyes részének ezt a parancsot:
Kulcsszó hogy elmondja az adatbázis, hogy ez a csapat - kérelmet. Minden lekérdezés kezdődik ez a szó, utána egy szóközt.
Ez - egy listát a táblázathoz oszlopokat, amelyek az adott lekérdezés által. Bármilyen oszlopok nem szerepel itt szerepelni fog a parancs kimenetére. Ez persze nem jelenti azt, hogy el lesz távolítva, vagy az információ törlésre kerül a táblázatban, mert a kérelem nem befolyásolja az adatokat a táblázatok; ez csak azt mutatja az adatokat.
FROM - kulcsszó, mint a SELECT, amelyet be kell mutatni a értékesítők minden kérés. Ezt követi egy szóközt, majd a tábla nevét használják információforrásként. Ebben az esetben - egy asztal Sellers (értékesítők).
A pontosvessző minden interaktív SQL parancsok, hogy tájékoztassa az adatbázist, hogy a parancs befejezése, és készen áll, hogy végre kell hajtani. Egyes rendszerekben a fordított perjel (\) egy sorban jelzi a parancs végére.
Természetesen, a kérelmet az ilyen jellegű nem feltétlenül intézkedik semmilyen kimenetet ezen a módon. Ugyanez a csapat is készült azonos adatokat, hanem különböző időpontokban nem lesz képes, hogy vonja vissza ugyanabban a sorrendben. Normális esetben vonalakat észlel abban a sorrendben, de ezek megtalálhatók a táblázatban, mivel hoztunk létre az előző fejezetben - ez a sorrend tetszőleges. Ez nem feltétlenül a sorrendet, amelyben az adatok bevezetett vagy fenntartott. Tudod rendezni a visszavonását SQL parancsokat közvetlenül: speciális ajánlatok. Később, megmutatjuk, hogyan kell ezt csinálni. És most, csak megérteni, hogy az nem tartalmaz kifejezett megrendelés, nincs különösebb rend a kimenet.
A használat megtérülési (ENTER billentyűt) tetszőleges. Meg kell beállítani, mint egy kényelmes, hogy egy kérés, egy pár sorban vagy egy sorban, az alábbiak szerint: Mivel az SQL használja a pontosvessző jelzi a végén a csapat, a legtöbb SQL eljárás a visszatérítés (a Return vagy Enter billentyűt), mint üresen. Ez - egy jó ötlet, hogy a visszatérítések és összehangolása, hogy mi volt korábban, hogy a parancsokat könnyebben olvasható és pontosabb.
Mindig válaszd a legegyszerűbb módja
Ha azt szeretnénk, hogy minden oszlop a táblázatban, van egy opcionális csökkentése, amelyek segítségével. A csillaggal (*) lehet használni, hogy megjelenjen a teljes listát az oszlopok a következő módon: ez vezet ugyanarra az eredményre, mint a mi előző parancsot.
LEÍRÁS SELECT
Általában a SELECT parancs elindítja a kulcsszó SELECT, utána egy szóközt. Ezután kell majd egy listát az oszlopok neveit szeretné látni, vesszővel elválasztva. Ha szeretné látni az összes oszlopot a táblázatban, akkor cserélje ki a listából a csillaggal (*). FROM kulcsszó következőt, majd egy szóközt és a tábla nevét, amelyhez a kérelmet benyújtották. Összefoglalva, a pontosvessző (;) kell használni, hogy befejezze a vizsgálatot, és azt jelzi, hogy a csapat készen áll a futásra.
A SELECT parancs képes információk kinyerése egy jól meghatározott táblázatban. Először is, biztosítani tudjuk a lehetőséget, hogy csak bizonyos táblázat oszlopai. Ezt úgy érjük könnyen, egyszerű oszlopokon, kivéve, hogy nem akarja látni, egy részét a SELECT utasításban. Például, a lekérdezés fog a kimeneti 3.2 ábrán látható. 3.2 ábra: kiválasztása egyedi oszlopok
Lehetnek táblázatokat, amelyek nagyszámú adatokat tartalmazó oszlopok, amelyek nem mindegyike releváns a feladathoz. Ezért, akkor megtalálja a módját, a szedés és kiválasztja csak hasznos az Ön oszlopokat.
átrendezésével oszlop
Még ha az oszlopok a táblában, definíció szerint, annak érdekében, ez nem jelenti azt, hogy akkor is visszaállíthatja az ugyanabban a sorrendben. Természetesen a csillag (*) jelenik meg az összes oszlopot a természetes rend, de ha megadja az oszlopokat külön lehet kapni őket abban a sorrendben, amit akar. Nézzük Rendelések tábla tartalmazza az akvizíció időpontjában (Odate), eladó szoba (SNUM), rendelési száma (onum), valamint a vásárlási összeg (AMT): A kimenő e lekérdezés ábrán látható 3.3. 3.3 ábra: rekonstrukciója oszlopok
Mint látható, a szerkezet az információ a táblázatokban - ez csak egy alap aktív szerkezet SQL tuning.
Távolítsuk el a felesleges DATA
KÜLÖNÁLLÓ (kitüntetéses) - olyan érv, amely biztosítja az Ön számára egy módja annak, hogy megszüntesse a kettős értékét a javaslat SELECT. Tegyük fel, hogy szeretné tudni, hogy mely gyártók most már a megrendelések sorrendjében táblázatban. A végzés értelmében (itt és alább) Belátható, mint a rekord a rend-tábla regisztráció a szerzemények egy bizonyos napon egy bizonyos ügyfél adott vásárló egy bizonyos összeget). Nem kell tudni, hogy hány megrendelések esetén az egyes; csak akkor kell egy listát eladók szoba (SNUM). Ezért, akkor írja be: az ábrán látható eredményt 3.4 ábra 3: 4: SELECT a párhuzamos gyártók szoba.
A listát nem ismétli, az olvashatóság, akkor adja meg a következő: Output erre a lekérdezésre ábrán látható 3.5.
Más szóval, egy KÜLÖNÁLLÓ számon tartja értékek előtt, így azokat nem duplikált a listán. Ez - egy hasznos módja annak, hogy elkerülje az adatok redundáns, de fontos, hogy közben megérteni, hogy mit csinál. Ha nem akarja elveszíteni néhány adatot, akkor nem kell vakon használni KÜLÖNÁLLÓ, mert elrejteni valami probléma, vagy néhány fontos adat. Például, lehet, hogy azt feltételezik, hogy a nevét az összes ügyfél különböző. Ha valaki elhelyez egy második Clemens a Vevők táblában, és használ egy KIVÁLASZTOTT KÜLÖNÁLLÓ cname, akkor nem is tud a létezéséről ikertestvére. Lehet kapni, hogy Clemens nem volt és nem is tud róla. Mivel nem számítunk redundancia, amely esetben ne használja különbözőek.
eltérő jellemzőkkel
KÜLÖNÁLLÓ megadható csak egyszer, az adott mondatban SELECT. Ha a javaslat úgy dönt, számos emeleten 3.5 ábra: SELECT megkettőzése nélkül
KÜLÖNÁLLÓ kihagyja sorokban, ahol az összes kiválasztott padló azonosak. Vonalak, amelyben egyes értékek azonosak, és néhány más - mentésre kerül. KÜLÖNÁLLÓ, sőt, vezet megjeleníti az összes kimenő vonalak nem adja meg a mezők (kivéve, ha azt használják belsejében aggregativ értékes funkciókat, mint 6. fejezetben leírtak szerint), úgy, hogy nincs értelme megismételni.
KÜLÖNÁLLÓ Ahelyett, hogy minden
Ahelyett, különálló, megadhatja - ALL. Ez lesz az ellenkező hatást, másológépek kimeneti sorok maradnak. Mivel ez - az ugyanabban az ügyben, ha nem adsz meg semmilyen KÜLÖNÁLLÓ vagy ALL ALL - lényegében egy magától értetődő, és nem érvényes érv.
SZAKKÉPZETT VÁLASZTÁS AZ USE PÁLYÁZATOK
Táblázatok általában igen nagy, mert az idő múlásával egyre több a sorok száma tette hozzá. Mivel általában csak egy bizonyos vonalat érdekel ebben az időben, az SQL lehetővé teszi, hogy meghatározza a kritériumokat annak meghatározására, hogy mely sorok kerül kiválasztásra a kimenet.
HOL - a SELECT parancs, amely lehetővé teszi, hogy az alapul az a feltétel, amely lehet igaz vagy hamis minden sorában az asztalra. Command letölti csak azokat a sorokat a táblázatból, amelyre ez igaz. Tegyük fel például, szeretné látni a nevét, és felhatalmazzák minden eladó Londonban. Beírhatja ezt a parancsot: Amikor egy WHERE záradék kerül bemutatásra, egy adatbázis program ellenőrzi az egész táblázat ugyanazon a vonalon, és megvizsgálja, minden sor annak megállapítására, hogy az állítás igaz. Következésképpen a felvétel Peel, a program meg fogja vizsgálni az aktuális értéket, amely a város oszlopban határozza meg, hogy ez megegyezik a „London”, és ezt a sort a kimeneten. Felvételi Serres nem lesz benne, és így tovább. A kimenet a fenti lekérdezés ábrán látható 3.6. 3.6 ábra: SELECT c WHERE
Próbáljuk egy példát számmező a WHERE záradékot. Field értékelés ügyfelek táblázat célja, hogy ossza ügyfelek csoportokba alapján bizonyos kritériumok szerint lehet összefoglalni ezt a számot. Talán - formája a hitelbírálat vagy értékelés alapján a kötet a korábbi felvásárlások. Ezek a numerikus kódok hasznosak lehetnek egy relációs adatbázis, mert így a összegezzük az összetett információkat. Mi lehet kijelölni minden ügyfél a pontszám 100, az alábbiak szerint: egyszeres idézőjelbe itt nincsenek, mert az értékelés - számmező. A lekérdezés eredményeket a 3. ábra a 7..
WHERE záradék kompatibilis az előző anyag ebben a fejezetben. Más szóval, akkor az oszlop számát, megszüntetésére másolatokat, vagy átrendezheti az oszlopok a SELECT WHERE használó. Azonban meg lehet változtatni a sorrendjét az oszlop nevét csak a SELECT záradék, de nem a WHERE záradékot. Ábra 3.7: SELECT számmező egy predikátum
A legfontosabb dolog az, hogy akkor meg egy ismert állapot egy állítmány, amely meghatározza e vagy sem határozza meg a megadott A táblázat ezer ugyanezen sorokat, függetlenül attól, hogy van kiválasztva kimenet.
Predikátumok nagyon összetett, feltéve, ha egy nagy pontosságú eldönti, hogy mely vonalakat kiválasztott a kérést. Ez a képesség, hogy pontosan mit szeretne látni, hogy ilyen erős SQL lekérdezések. A következő néhány fejezetet szentelnek nagyobb mértékben, jellemzőit, amelyek kiterjesztik a hatalom az állítmány. A 4. fejezet, akkor be kell mutatni, hogy eltérő piaci szereplők azok, amelyeket egy állítmány feltételek, valamint a módját, hogy egyesítsen feltételek egyetlen feltételnek.
Az SQL
1. Írj egy SELECT utasítás hozná a megrendelés számát, mennyiségét és időpontját minden sorát a megrendelések asztalra.
2. Írj egy lekérdezést, amely hozott volna a sorokat a Vevők táblában az eladó szám = 1001.
3. Írj egy lekérdezést, amely hozott volna egy táblázatot az oszlopok a következő sorrendben: város, SNAME, SNUM, komm.
4. Írj egy SELECT utasítást, amely vezetett volna értékelés (minősítés), majd a nevét, minden ügyfél San Jose.
5. Írj egy lekérdezést, amely elvitte volna értéke SNUM minden eladó a jelenlegi rendben a Rendelések tábla nélkül semmilyen ismétlést.