Osnove SQL-a - rješenje na jednom mjestu za početnike



Ovaj opsežni članak o osnovama SQL-a pomoći će vam da započnete s SQL-om. To će vam pomoći s osnovnim naredbama i upitima potrebnim za svakodnevne transakcije.

U današnjem svijetu podaci su sve. Ali da bi se njime upravljalo, treba svladati umijeće upravljanja podacima. S tim dolazi i jezik, tj. što je osnova svima. SQL je jezgra baza podataka relacijskog tipa koja se koristi u većini tvrtki. Kroz ovaj ću vam članak pomoći da započnete s osnovama SQL-a.

Sljedeće teme bit će obrađene u ovom članku:





Pokriti ćemo svaku od ovih kategorija jednu po jednu, pa krenimo.

Uvod u SQL



logotip - SQL OSNOVE - Edureka

SQL je u IBM-u razvio Donald D. Chamberlin i Raymond F. Boyce početkom 1970-ih. To se u početku zvalo NASTAVAK ( S strukturirano JE nglish DA ry L tjeskoba). Glavni cilj SQL-a je ažurirati, pohraniti, manipulirati i dohvatiti podatke pohranjene u relacijskoj bazi podataka. Tijekom godina SQL je pretrpio puno promjena. Dodano je puno funkcionalnosti kao što su podrška za XML, okidači, pohranjene procedure, podudaranje regularnih izraza, rekurzivni upiti, standardizirani nizovi i još mnogo toga.

Pa, kako se SQL razlikuje od MySQL-a?



Postoji zabluda ili zbrka u vezi s ovom temomi želio bih to ovdje pojasniti.

SQL je standardni jezik koji se koristi za rad s bazom podataka u obliku upita. Ali MySQL je sustav za upravljanje bazom podataka otvorenog koda ili jednostavno softver baze podataka. MySQL organizirat će, a zatim pohraniti podatke u svoju bazu podataka.

Prednosti:

  • SQL ima dobro definirana standardima
  • SQL je interaktivni u prirodi
  • Uz pomoć SQL-a može se stvarati više pogleda
  • Prenosivost koda u SQL-u je istaknuta značajka

Podaci i baza podataka

Prvo i najvažnije moramo razumjeti što su podaci. Podaci su zbirka činjenica o predmetu koji vas zanima. Podaci o studentu mogu sadržavati informacije poput imena, jedinstvenog id, dob, adresa, obrazovanje itd. Softver mora pohranjivati ​​podatke onako kako je potrebno za odgovor na pitanje, npr. Koliko učenika ima 15 godina?

Baza podataka:

Baza podataka je organizirana zbirka podataka koja se općenito pohranjuje i pristupa im elektroničkim putem iz računalnog sustava. Jednostavnim riječima možemo reći bazu podataka na mjestu gdje se podaci pohranjuju. Najbolja analogija je knjižnica. Knjižnica sadrži ogromnu kolekciju knjiga različitih žanrova, ovdje se nalazi baza podataka, a knjige su podaci.

Baza podataka može se široko klasificirati u sljedeće skupine:

  • Centralizirana baza podataka
  • Distribuirana baza podataka
  • Operativna baza podataka
  • Relacijska baza podataka
  • Baza podataka u oblaku
  • Objektno orijentirana baza podataka
  • Grafička baza podataka

Sada ćemo se više usredotočiti na relacijsku bazu podataka koja koristi SQL za svoje operacije. Iskoristimo neke od

Kako stvoriti bazu podataka?

Koristimo izraz CREATE DATABASE za stvaranje nove baze podataka.

Sintaksa:

IZRADI BAZU PODATAKA ime baze podataka

Primjer :

IZRADI BAZU PODATAKA Škola

Tako će se stvoriti baza podataka škole. Ako želite izbrisati ovu bazu podataka, morate upotrijebiti sljedeću sintaksu.

Kako ispustiti bazu podataka?

Sintaksa:

kako obrnuti nizove u pythonu
DROP DATABASE ime baze podataka

Primjer:

DAP BAZA PODATAKA Škola

Baza podataka s imenom Škola bit će izbrisana.

Stol

Tablica u bazi podataka nije ništa drugo nego zbirka podataka u tabličnom obliku.Sastoji se od stupaca i redaka . Tablica sadrži podatkovne elemente poznate i kao vrijednosti pomoću modela vertikalnih stupaca i vodoravnih redaka. Pozvana je točka presjeka reda i stupa STANICA . Tablica može imati bilo koji broj redaka, ali treba imati određeni broj stupaca.

Stvorite tablicu

Dakle, za stvaranje tablice u bazi podataka koristimo sljedeći SQL upit.

Sintaksa

STVORI TABELU ime_tablice (tip podataka stupca1, tip podataka stupca2, tip podataka stupca3, ....)

Ovdje je ključna riječ Stvori tablicu se koristi da se bazi podataka kaže da ćemo stvoriti novu tablicu. Zatim moramo spomenuti naziv tablice. Ovo ime mora biti jedinstveno. SQL ne razlikuje velika i mala slova, ali podaci pohranjeni u tablici osjetit će velika i mala slova. Dodajemo stupce unutar otvorenih i zatvorenih zagrada. Svaki stupac određujemo određenom vrstom podataka. Da biste saznali više o Vrste podataka u SQL provjerite .

Primjer:

STVORI TABELU Student (studentID int, FName varchar (25), LName varchar (25), Adresa varchar (50), City varchar (15), Marks int)

Stvorili smo tablicu s imenom Student i dodali nekoliko parametara u tablicu. Tako možemo stvoriti tablicu pomoću SQL-a.

Baci tablicu

Ako želimo izbrisati cijelu tablicu sa svim njezinim podacima, tada moramo koristiti naredbu DROP.

Sintaksa:

DROP TABLE ime_tabele

Primjer:

KAPLJENA TABLA Student

Tako će se studentska tablica izbrisati.

Skratite tablicu

Što ako bismo htjeli izbrisati samo podatke unutar tablice, ali ne i samu tablicu? Tada moramo upotrijebiti upit za skraćivanje.

Sintaksa:

ODREDI TABLICU ime_tablice

Primjer:

TRUNKATSKI STO Učenik

Kada izvršimo gornji upit, podaci unutar tablice će se izbrisati, ali tablica ostaje. Da biste saznali više, ovaj članak možete pogledati na .

Točnost i pouzdanost podataka koji ulaze u bazu podataka možemo povećati kroz tablicu uz pomoć koncepta tzv SQL OGRANIČENJA . Ova ograničenja osiguravaju da nema kršenja u smislu transakcije podataka ako se pronađe, tada će radnja biti prekinuta. Glavna upotreba ograničenja je ograničavanjevrsta podataka koji mogu ući u tablicu. Budući da je ovaj arTekst je povezan s osnovama SQL-a, raspravit ću samo o najčešće korištenim ograničenjima. Da biste o tome detaljno saznali, pogledajte našu drugi SQL blogovi.

  • ZADANO - W.tada nije navedena vrijednost, tada se dodaje skup zadanih vrijednosti za stupac
  • NIJE NULJA - Ovo je sigurnoda se NULL vrijednost neće pohraniti u stupac
  • JEDINSTVENO -Vrijednosti unesene u tablicu bit će jedinstvene ako se primijeni ovo ograničenje
  • INDEKS - To se koristi za stvaranje i dohvaćanje podataka iz baze podataka
  • OSNOVNI KLJUČ - Ključ kandidata odabran je za jedinstvenu identifikaciju korpice u relaciji.
  • STRANI KLJUC - Strani ključ je skup jednog ili više stupaca u podređenoj tablici čije se vrijednosti moraju podudarati s odgovarajućim stupcima u nadređenoj tablici
  • ČEK -Ako želimo zadovoljiti određeni uvjet u stupcu, tada koristimo ograničenje CHECK

SQL OSNOVNA PITANJA

Sad, usredotočimo se na neke da treba znati kad počnu učiti o SQL-u. Mnogo je upita koji se čine osnovnim,ali obradio sam nekoliko koji su doista neophodni za početnike. Za objašnjenje svih upita uzeo sam u obzir studentsku tablicu koju ću koristiti.

ODABERI

To je najosnovniji SQL upit koji se može koristiti za manipulaciju bazom podataka. Naredba select koristi se za odabir podataka iz baze podataka i njihovo prikazivanje korisniku.

Sintaksa :

Odaberite stupac 1, stupac 2 & hellip..column N Iz tablice

Primjer :

Odaberite ime od učenika

Gornji primjer prikazat će sva imena iz studentske tablice. Ako želimo prikazati sva polja u tablici, tada moramo koristiti operator * (zvjezdica). Ovo će prikazati cijelu tablicu.

Primjer :

Odaberite * iz Studenta

Ako želimo prikazati određeno polje bez duplikata, koristimo ključnu riječ DISTINCT zajedno s naredbom select.

Primjer :

Odaberite DISTINCT FName From Student

GDJE

Ako su nam potrebni samo određeni zapisi iz tablice, tada koristimo klauzulu where. Gdje klauzula djeluje kao mehanizam filtriranja. U odjeljku Gdje moramo navesti određene uvjete, samo ako su ti uvjeti zadovoljeni, izvodi će se izvući.

Sintaksa :

ODABERI stupac1, stupac2, ... stupac N FROM ime_tablice WHERE

Primjer :

ODABERITE IME OD UČENIKA GDJE Grad = 'Delhi'

I, ILI, NE

Ako trebamo dodati dva ili više uvjeta u klauzulu where, tada možemo koristiti gore spomenute operatore. Te će ključne riječi upitu dodati više složenosti.

  • I Operator:Ovaj operator prikazuje zapis ako su svi uvjeti odvojeni I ISTINIJI.

Sintaksa :

ODABERITE stupac1, stupac2, ... IZ ime_tablice GDJE uvjet1 I uvjet2 I uvjet3 ...

Primjer :

ODABERITE * OD UČENIKA GDJE je FName = 'John' I Lname = 'Doe'
  • ILI Operator: Ovaj operator prikazuje zapis ako je bilo koji od uvjeta odvojenih ILI ISTINIT.

Sintaksa :

ODABERI stupac1, stupac2, ... IZ ime_tablice GDJE uvjet1 ILI uvjet2 ILI uvjet3 ...

Primjer :

ODABERITE * OD UČENIKA GDJE FName = 'John' ILI Lname = 'Doe'
  • NOT Operator: Ovaj operater prikazuje zapis ako uvjeti / uvjeti NISU ISTINITI.

Sintaksa :

ODABERI stupac1, stupac2, ... IZ naziv_tabele WHERE NOT uvjet

Primjer :

ODABERITE * OD UČENIKA GDJE NIJE Lname = 'Srna'

UMETNUTI U

Ako želimo umetnuti bilo koji novi zapis ili podatak u tablicu, možemo koristiti INSERT upit. Insert možemo koristiti na dva načina:

  • Ovdje navodimo nazive stupaca za koje trebamo umetnuti zapis.

Sintaksa :

INSERT INTO ime_tablice (stupac1, stupac2, ...) VRIJEDNOSTI (vrijednost1, vrijednost2, vrijednost3, ...)

Primjer :

Umetni u vrijednosti učenika (studentID, FName, LName, Address, City, Marks) (101, ‘JHON’, ‘DOE’, ’# 21, MG ROAD’, ‘Bengaluru’, 550)
  • U tome ne moramo navesti stupce tablice. Ali pripazite da redoslijed vrijednosti bude u istom redoslijedu kao stupci u tablici.

Sintaksa :

INSERT INTO table_name VRIJEDNOSTI (vrijednost1, vrijednost2, vrijednost3, ...)

Primjer :

UMETNI U VRIJEDNOSTI učenika (102, ‘Alex’, ‘Cook’, ’# 63, BRADA CESTE, BLIZU HAL-a,‘ Bengaluru ’, 490)


Ako želimo umetnuti u određene stupce, tada moramo slijediti donju metodu.

Primjer :

INSERT INTO Student (studentID, FName) VRIJEDNOSTI (103, ‘Mike’)

AGREGATNE FUNKCIJE

Skupna funkcija je funkcija u kojoj su vrijednosti više redaka grupirane kao ulaz po određenim kriterijima i vraća se jedna vrijednost. Često koristimo agregatne funkcije s klauzulama GROUP BY i HAVING izraza SELECT. Kasnije u ovom odjeljku razgovarat ćemo o GROUP BY, ORDER BY i HAVING. Neke skupne funkcije su COUNT, SUM, AVG, MIN, MAX.

Raspravljajmo o svakom pojedinačno.

  • COUNT (): Ova funkcija vraća broj redaka koji odgovaraju navedenim kriterijima.

Sintaksa :

ODABERI COUNT (naziv_ stupca) IZ naziv_tablice WHERE

Primjer :

ODABERITE BROJ (studentID) IZ studenta
  • AVG (): Ova funkcija vraća prosječnu vrijednost numeričkog stupca.

Sintaksa :

ODABERI AVG (ime_stupaca) IZ naziv_tablice WHERE

Primjer :

ODABERITE PROSJEK (ocjene) IZ učenika
  • SUM (): Ova funkcija vraća ukupan zbroj numeričkog stupca.

Sintaksa :

ODABERI ZBOR (naziv_stupca) IZ naziv_tablice WHERE

Primjer :

ODABERI ZUM (Oznake) IZ Učenika
  • MIN (): Ova funkcija vraća najmanju vrijednost odabranog stupca.

Sintaksa :

ODABERI MIN (naziv_stupca) IZ naziv_tablice WHERE

Primjer :

c ++ rekurzivni fibonaci
ODABERITE MIN (Oznake) KAO Najmanje oznake IZ učenika
  • MAX (): Ova funkcija vraća najveću vrijednost odabranog stupca.

Sintaksa :

ODABERI MAX (ime_stupaca) IZ naziv_tablice WHERE

Primjer :

ODABERITE MAX (Oznake) KAO najviše ocjene učenika

Napomena: Ovdje smo koristili alias (AS new_name), o čemu ćemo raspravljati za kratko vrijeme.

GRUPIRAJ PO, IMAJUĆI, NARUČI PO

Te se ključne riječi (GROUP BY, HAVING, ORDER BY) koriste u upitu za povećanje funkcionalnosti. Svatko od njih ima određenu ulogu.

  • GROUP BY: Ova se funkcionalnost koristi za raspoređivanje slične vrste podataka u grupu. Na primjer, ako se stupac u tablici sastoji od sličnih podataka ili vrijednosti u različitim redovima, tada možemo koristiti funkciju GROUP BY za grupiranje podataka.

Sintaksa :

ODABIR ime (-a) stupca IZ ime-a tablice WHERE uvjet GROUP BY (naziv) stupca

Primjer :

ODABERITE COUNT (StudentID), ime iz grupe učenika prema imenu
  • IMATI: Ova se klauzula koristi za postavljanje uvjeta u kojima trebamo odlučiti koja će skupina biti dio konačnog rezultata. Također, ne možemo koristiti agregatne funkcije poput SUM (), COUNT () itd. sa GDJE klauzula. U takvoj situaciji moramo koristiti HAVING uvjet.

Sintaksa :

ODABIR ime (-a) stupca IZ IMA_tablice WHERE uvjet GROUP BY (naziv) stupca IMA uvjet


Primjer :

ODABERITE ime, zbroj (ocjene) IZ studentske skupine prema imenu s imenom (ocjene)> 500

  • ORDER BY: Ova se ključna riječ koristi za sortiranje skupa rezultata u rastućem ili silaznom redoslijedu. The NARUČITE PO ključna riječ prema zadanim postavkama sortira zapise u rastućem redoslijedu. Ako zapise želimo sortirati u opadajućem redoslijedu, upotrijebite ključnu riječ DESC.

Sintaksa :

ODABERITE stupac1, stupac2, ... IZName_tablice NARUČI po stupcu1, stupcu2, ... ASC | DESC


Primjer :

ODABERITE BROJ (StudentID), Grad IZ GRUPE Studenta PO GRADU RED PO BROJU (StudentID) DESC

NULL VRIJEDNOSTI

U SQL-u koristimo izraz NULL za predstavljanje vrijednosti koja nedostaje. NULL vrijednost u tablici je vrijednost koja se čini praznom. Polje s NULL vrijednošću je polje bez vrijednosti u SQL-u. Imajte na umu da se NULL vrijednost razlikuje od nulte vrijednosti ili polja koje sadrži razmake.

Za provjeru null vrijednosti ne bismo trebali koristiti operatore poput, = itd. Nije podržano u SQL-u. Imamo posebne ključne riječi, to jest, NULL je i NIJE NULL.

  • JE NIŠTA Sintaksa :
ODABERI imena_ stupaca IZ_ime_tablice GDJE je ime_stupaca NULL

Primjer :

Odaberite Fname, Lname from Student where Marks IS NULL

  • NIJE NIŠTA Sintaksa :
ODABERITE imena_ stupaca IZ_ime_tablice GDJE ime_stupaca NIJE NULL

Primjer :

Odaberite Fname, Lname from Student where Marks NOT NULL

AŽURIRANJE i BRISANJE

  • UPDATE: Naredba Update koristi se za izmjenu redaka u tablici. Naredba ažuriranja može se koristiti za ažuriranje jednog polja ili više polja istovremeno.

Sintaksa :

AŽURIRANJE ime_tabele SET stupac1 = vrijednost1, stupac2 = vrijednost2, ... WHERE uvjet

Primjer :

AŽURIRATI SET učenika Fname = 'Robert', Lname = 'Wills' WHERE StudentID = 101
  • DELETE: Naredba SQL DELETE koristi se za brisanje redaka koji više nisu potrebni iz tablica baze podataka. Iz tablice briše cijeli redak .

Sintaksa :

IZBRIŠI IZ ime_tabele WHERE uvjet

Primjer :

OBRIŠI SA UČENIKA GDJE FName = 'Robert'

Ovdje je poseban slučaj, ako moramo izbrisati cijele zapise tablice, tada moramo navesti ime tablice. Podaci te određene tablice bit će podijeljeni.

Primjer :

što je lijevanje tipa u javi
Izbriši iz učenika

Jedno od glavnih pitanja koje se sada postavlja jest: Koja je razlika između naredbe DELETE i TRUNCATE? Odgovor je jednostavan. DELETE je DML naredba, dok je TRUNCATE DDL naredba, također DELETE briše zapise jedan po jedan i vrši unos za svako brisanje u dnevniku transakcija, dok TRUNCATE uklanja alokaciju stranica i vrši unos za uklanjanje stranica u dnevniku transakcija .

IN i IZMEĐU operatora

  • Operator IN koristi se za specificiranje više vrijednosti unutar klauzule WHERE. Djeluje kao kratica za višestruki ILI.

Sintaksa :

ODABIR ime (-a) stupca (a) FROM ime_tablice GDJE ime_ stupca IN (vrijednost1, vrijednost2, ...)

Primjer :

ODABERITE StudentID, Fname, Lname FROM Student WHERE City IN ('Delhi', 'Goa', 'Pune', 'Bengaluru')
  • IZMEĐU operatora će odabrati određenu vrijednost unutar navedenog raspona. Obavezno je dodati početnu i krajnju vrijednost (Raspon).

Sintaksa :

ODABERITE ime (na) stupca IZ IMA tablice GDJE ime_ stupca IZMEĐU vrijednosti1 I vrijednosti2

Primjer :

ODABERITE ID studenta, ime, ime od studenta gdje su oznake između 400 i 500

Pseudonimi u SQL-u

Alias ​​je postupak davanja tablici ili stupcu privremenog imena, tako da pomaže kada je upit složen. Povećava čitljivost upita. Ovo je preimenovanje privremeno i naziv tablice se ne mijenja u izvornoj bazi podataka. Možemo nadimati stupac ili tablicu. Ispod sam spomenuo obje sintakse.

The sintaksa za poravnanje stupaca :

ODABERITE ime_kolone KAO alias_name IZName_tablice

Primjer za poravnanje stupaca :

ODABERITE ID kupca kao ID, ime kupca kao kupca od kupaca

Sintaksa za uklapanje stolova :

ODABIRI ime (na) stupca IZ IMA tablice KAO alias_name

Primjer za uklapanje stolova :

ODABERITE S.Fname, S.LName FROM Student kao S

Ovo nas dovodi do kraja ovog članka o osnovama SQL-a.Nadam se da ste razumjeli koncepte osnova SQL.

Ako želite saznati više o MySQL i upoznajte ovu relacijsku bazu podataka otvorenog koda, a zatim pogledajte našu koja dolazi s treningom uživo pod vodstvom instruktora i iskustvom u stvarnom životu. Ovaj trening pomoći će vam da dublje razumijete MySQL i postignete majstorstvo u vezi s tom temom.

Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare ove Osnove SQL-a, pa ćemo vam se javiti.