Az sql
E FEJEZETBEN KIEMELEMET AZ INFORMÁCIÓT TÁMOGATÁSBÓL. Megtanulja, hogyan lehet elhagyni vagy átrendezni az oszlopokat, és hogyan kell automatikusan eltávolítani a redundanciát a kimenetről. Összefoglalva, megtudhatja, hogyan állíthatja be az állapotot (ellenőrzés), amellyel meghatározhatja, hogy a táblázatban mely sorokat használják a kimeneten. Ez utóbbi funkciót a későbbi fejezetekben részletesen ismertetjük, és az egyik legelegánsabb és legerősebb az SQL-ben.
KÉRÉS KÉSZÍTÉSE
MI VONATKOZIK?
A lekérdezés az a parancs, amelyet megadsz az adatbázis programodnak, és amely azt mondja, hogy bizonyos adatokat a táblákból a memóriába hoz. 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.
HOGY A HASZNÁLATRA ALKALMAZHATÓ?
Minden SQL lekérdezés egyetlen parancsból áll. Ennek a parancsnak a szerkezete megtévesztően egyszerű, mivel kiterjeszteni kell, hogy nagyon összetett értékelések és adatfeldolgozás végezhessenek. Ezt a parancsot a - SELECT parancsnak hívják.
SELECT COMMAND
A legegyszerűbb formában a SELECT parancs egyszerűen arra utasítja az adatbázist, hogy kivonja az információkat a táblából. Például egy értékesítő táblázatot adhat ki a következők beírásával: Más szavakkal, ez a parancs egyszerűen kiírja az összes adatot a táblázatban. A legtöbb program az oszlopfejléceket is megadja, a fentiek szerint, és egyesek lehetővé teszik a részletes kimeneti formázást, de ez meghaladja a szabványos specifikációt. Természetesen az ilyen jellegű lekérdezések nem feltétlenül rendelik a kimenetet ilyen módon. Ugyanaz a parancs maga ugyanazokkal az adatokkal hajtja végre, de különböző időpontokban nem lesz képes ugyanarra a sorrendre nyomtatni. Általában a sorok abban a sorrendben találhatók, amelyben megtalálhatók a táblázatban, mivel, ahogy az előző fejezetben megállapítottuk, ez a sorrend önkényes. Ez nem feltétlenül az adattárolás sorrendje. A kimenetet az SQL parancsokkal közvetlenül elrendezheti: egy speciális mondattal. Később bemutatjuk, hogyan. És most csak asszimilálja, hogy nincs kifejezett rendelés, nincs végleges sorrend a következtetésedben.
A visszatérés (ENTER) használata önkényes. 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 A LEGKISEBB VÁLASZTÁST VÁLASZTJA
Ha látni szeretné az asztal egyes oszlopait, akkor választható parancsikont használhat. Egy csillag (*) használható az oszlopok teljes listájának megjelenítéséhez az alábbiak szerint: Ez ugyanazt az eredményt eredményezi, mint az előző parancsunk.
LEÍRÁS SELECT
Általánosságban elmondható, hogy a SELECT utasítás SELECT kulcsszóval kezdődik, amelyet egy szóköz követ. Ezután kövesse az oszlopnevek listáját, amelyeket vesszővel elválasztva látni szeretne. Ha a táblázat összes oszlopát szeretné látni, akkor ezt a listát egy csillaggal (*) helyettesíti. A következő FROM klauzulát követi egy szóköz és a táblázat neve, amelynek lekérdezésére kerül sor. Végezetül a pontosvesszőt (;) kell használni a kérés teljesítéséhez, és jelezni kell, hogy a parancs készen áll a végrehajtásra.
A SELECT parancs képes szigorúan meghatározott információkat kivonni egy tábláról. Először is tudjuk biztosítani, hogy csak a táblázat bizonyos oszlopait láthassuk. Ez egyszerű, kivéve az oszlopokat, amelyeket nem szeretné látni, a parancs SELECT részéből. Például egy lekérdezés lehetnek táblázatok, amelyek nagy számú, az adatokat tartalmazó oszlopokat tartalmaznak, amelyek közül mindegyik nem releváns a feladathoz. Ezért megtalálhatja a módját, hogy kiválassza és csak az Ön számára hasznos oszlopokat válassza ki.
OSZLOP ÁLLÁSFOGLALÁS
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 meg az asztal érdekében, amely az akvizíció időpontjában (Odate), eladó szoba (SNUM), rendelési száma (onum), valamint a vásárlási összeg (AMT): Mint látható, az adatokat a táblázatok szerkezetét - ez csak egy alap egy aktív kiigazítást az SQL struktúrák .
TÖKÉLETES ADATOK TÖRLÉSE
A DISTINCT egy olyan argumentum, amely lehetővé teszi a kettős értékek kiküszöbölését a SELECT záradékból. Tegyük fel, hogy szeretné tudni, hogy melyik eladóknak vannak rendelései a rendelési 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 rendelés van mindenki számára; csak az eladói számok listájára van szükség (snum). Ezért megadhatja:
Más szavakkal, a DISTINCT nyomon követi, hogy milyen értékek voltak korábban, hogy ne kerüljenek duplázásra a listában. Ez hasznos módja annak, hogy elkerüljük az adatok redundanciáját, de fontos, hogy ezzel megértsétek, mit csinálsz. Ha nem akarja elveszteni az adatokat, akkor ne használja a DISTINCT-t gond nélkül, mert elrejti a problémát vagy fontos adatokat. Például feltételezheti, hogy az ügyfelek nevei különbözőek. Ha valaki felveszi a második Clement az Ügyféltáblába, és a SELECT DISTINCT cname-et használod, akkor nem is tudsz a kettős létezéséről. Meg lehet szerezni a rossz Clement, és nem is tud róla. Mivel nem számít redundanciára, ebben az esetben ne használja a DISTINCT-et.
DISTINCT PARAMÉTEREK
A DISTINCT csak egyszer adható meg ebben a SELECT klauzulában. Ha a mondat több mezőt választ, a DISTINCT elhagyja a sorokat, ahol az összes kijelölt mező azonos. Azok a sorok, amelyekben egyes értékek megegyeznek, és néhány más - mentésre kerülnek. 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 összesítő függvények, mint 6. fejezetben leírtak szerint), úgy, hogy nincs értelme megismételni.
DISTINCT INSTEAD ALL
A DISTINCT helyett megadhatja az ALL értéket. Ennek ellentétes hatása lesz, a kimeneti sorok ismétlődése megmarad. Mivel ez ugyanaz az eset, ha nem adja meg a DISTINCT vagy ALL értékeket, akkor az ALL lényegében magyarázó és nem hatékony érv.
JAVASLATOK HASZNÁLATÁVAL KAPCSOLATOS MINŐSÍTETT VÁLASZTÁS
A táblák általában nagyon nagyok lesznek, mivel az idő múlásával egyre több sor kerül hozzá. Mivel általában csak bizonyos érdeklődési körök érdekelnek egy adott időpontban, az SQL lehetővé teszi, hogy kritériumokat határozzon meg annak meghatározásához, hogy mely sorokat válassza ki a kimenetnek.
WHERE egy SELECT utasítás, amely lehetővé teszi olyan predikátumok beállítását, amelyeknek a feltételei lehetnek igazak vagy hamisak a táblázat minden sorához. A parancs csak azokat a sorokat veszi fel az asztalról, amelyre az ilyen utasítás igaz. Tegyük fel például, hogy látni szeretné az eladók nevét és jutalékát Londonban. Ezt a parancsot megadhatja: Amikor egy WHERE záradék kerül bemutatásra, az adatbázis-program egyetlen sorban az egész táblát néz, és megvizsgálja az egyes sorokat annak megállapítására, hogy a kijelentés igaz-e. Ezért a Peel bejegyzés esetében a program megvizsgálja a város oszlopának aktuális értékét, megállapítja, hogy ez egyenlő a "London" értékkel, és ezt a karakterláncot tartalmazza a kimeneten. A Serres bejegyzés nem lesz engedélyezve, és így tovább. A fenti lekérdezés kimenete a 3.6. Ábrán látható. Próbáljunk példát egy numerikus mezővel a WHERE klauzulában. Az Ügyféltábla minősítési mezője az ügyfeleket csoportokba osztja, amelyek bizonyos, ebből a számból eredő kritériumok alapján szerezhetők. Talán ez a hitelminősítés egy formája vagy a volumenen alapuló korábbi felvásárlások becslése. Az ilyen számkódok hasznosak lehetnek a relációs adatbázisokban, mint a komplex információ összefoglalásának módja. Kiválaszthatjuk az összes olyan ügyfelet, amelynek értékelése 100, az alábbiak szerint: Egyetlen idézőjelet itt nem használunk, mert a pontszám egy numerikus mező. A lekérdezés eredményeit a 3. ábrán mutatjuk be.
A WHERE záradék összeegyeztethető az ebben a fejezetben szereplő korábbi anyaggal. Más szavakkal, az oszlopok számát, az ismétlődések megszüntetését vagy az oszlopok átrendezését használhatja a WHERE-t használó SELECT utasításban. Azonban az oszlopok sorrendjét csak a SELECT klauzulában szereplő nevek esetében módosíthatja, de nem a WHERE klauzulában.
A legfontosabb, hogy olyan predikátumot állít be, amely meghatározza vagy nem határozza meg a megadott táblázat sorát ugyanazon sorok ezreiből, függetlenül attól, hogy a kimenetre van-e kiválasztva.
A predikátumok nagyon összetettek lehetnek, és nagy pontosságot biztosítanak a lekérdezés alapján választott sorok meghatározásához. Ez az a képesség, hogy eldönthesse, pontosan mit szeretne látni, olyan nagy SQL lekérdezéseket tesz lehetővé. A következő fejezeteket nagyobb mértékben szentelik azoknak a tulajdonságoknak, amelyek kiterjesztik a predikátumok erejét. A 4. fejezetben bemutatjuk azokat az üzemeltetőket, amelyek nem a predikátumokban használatosak, és hogyan kapcsolják össze a több feltétel egyetlen predikátumba.