Razlika između klauzule "gdje" i "having" u SQL-u

Sadržaj:

Razlika između klauzule "gdje" i "having" u SQL-u
Razlika između klauzule "gdje" i "having" u SQL-u

Video: Razlika između klauzule "gdje" i "having" u SQL-u

Video: Razlika između klauzule
Video: Енталпија 1. део 2024, Studeni
Anonim

Ključna razlika – gdje u odnosu na postojanje klauzule u SQL-u

Podaci su važni za svaku organizaciju. Stoga je potrebno podatke pohraniti na organiziran način kako bi se mogli dohvatiti. Podaci se pohranjuju u tablice. Baza podataka sastoji se od zbirke tablica. Jedan uobičajeni tip baze podataka su relacijske baze podataka. U relacijskoj bazi podataka tablice su međusobno povezane. Na primjer, stol kupac povezan je sa stolom naloga. Sustav upravljanja relacijskom bazom podataka (RDBMS) je sustav upravljanja bazom podataka koji se temelji na relacijskom modelu. Koristi se za upravljanje relacijskim bazama podataka. Neki primjeri RDBMS-a su MySQL, MSSQL i Oracle. Structured Query Language (SQL) jezik je koji se koristi za manipuliranje i dohvaćanje podataka u relacijskoj bazi podataka. U SQL-u postoje razne klauzule za obavljanje različitih zadataka. Dvije od njih su gdje i imaju. U ovom se članku govori o razlici između klauzule where i having u SQL-u. Ključna razlika između klauzule where i having u SQL-u je u tome što se klauzula where koristi za filtriranje zapisa prije grupiranja ili združivanja, dok se klauzula having koristi za filtriranje zapisa nakon grupiranja ili združivanja.

Što je klauzula where u SQL-u?

Pomaže pri dohvaćanju, ažuriranju ili brisanju određenog skupa podataka iz tablice prema danom stanju. Programer može koristiti klauzulu where za ograničavanje i dohvaćanje samo potrebnih podataka. Upit se izvršava samo na zapisima u kojima je uvjet naveden klauzulom where istinit. Može se koristiti s odabirom, ažuriranjem i brisanjem.

Pogledajte donju tablicu učenika,

Razlika između klauzule where i having u SQL_Slika 02
Razlika između klauzule where i having u SQL_Slika 02
Razlika između klauzule where i having u SQL_Slika 02
Razlika između klauzule where i having u SQL_Slika 02

Za odabir imena i dobi učenika čiji je student_id jednak 3, može se koristiti sljedeći SQL upit.

odaberite ime, dob učenika gdje je student_id=3;

Također je moguće koristiti operatore kao što je nije jednako (!=), veće od (>), manje od (=), manje od ili jednako (<=). Za odabir student_id i imena čija dob nije jednaka 15, može se koristiti sljedeći SQL upit.

odaberite student_id, ime učenika gdje je dob!=15;

Za promjenu dobi učenika od 2 do 13, može se koristiti sljedeći upit.

update student set age=13 gdje je id=3;

Za brisanje zapisa čiji je student_id 4, može se koristiti sljedeći upit.

izbriši iz učenika gdje je student_id=4;

Operatori i, ili mogu se koristiti za kombiniranje više uvjeta.

odaberite ime učenika gdje je student_id=1 i dob=15; upit će dohvatiti ime Ann.

Ovo su neki primjeri klauzule where u SQL-u. Ako postoji klauzula Group By, klauzula where se pojavljuje prije nje.

Što je klauzula "having" u SQL-u?

Postoje funkcije koje pruža SQL jezik za jednostavno izvođenje izračuna. Poznate su kao funkcije agregacije. Min () se koristi za pronalaženje najmanje vrijednosti odabranog stupca. Max () se koristi za pronalaženje maksimalne vrijednosti odabranog stupca. Prosjek () koristi se za pronalaženje prosjeka u stupcu, a zbroj () koristi se za pronalaženje ukupnog iznosa stupca. Ovo su neki primjeri funkcija agregacije. Pogledajte donju tablicu narudžbi,

Razlika između klauzule where i having u SQL_Slika 03
Razlika između klauzule where i having u SQL_Slika 03
Razlika između klauzule where i having u SQL_Slika 03
Razlika između klauzule where i having u SQL_Slika 03

Programer može napisati SQL upit kako slijedi kako bi dohvatio kupce čiji je saldo veći od 2000.

odaberiteiz grupe naloga po kupcu koji ima zbroj (stanje) > 2000.

Ovim će se ispisati zapisi kupaca čiji je zbroj stanja veći od 2000. Ispisat će se zapisi kupaca Ann i Alex.

Klauzula koja ima koristi se za dohvaćanje vrijednosti za grupe koje zadovoljavaju određene uvjete. Stoga će se kao rezultat toga pojaviti skupina koja padne na zadani uvjet. Odredba koja ima pojavljuje se nakon klauzule za grupiranje. Ako klauzula za grupiranje nije prisutna, klauzula koja ima će raditi slično kao klauzula gdje.

Koje su sličnosti između klauzule where i having u SQL-u?

  • Oboje su klauzule u Structured Query Language.
  • Oboje se može koristiti za filtriranje dohvaćanja skupa podataka.

Koja je razlika između odredbe where i having u SQL-u?

gdje naspram imanja klauzule u SQL-u

Gdje je SQL klauzula koja se koristi za specificiranje uvjeta tijekom dohvaćanja podataka iz jedne tablice ili spajanjem s više tablica. Imanje je SQL klauzula koja specificira da bi SQL izjava za odabir trebala vraćati samo retke gdje agregatne vrijednosti ispunjavaju navedene uvjete.
Svrha
Odredba where se koristi za filtriranje redaka. Klauzula koja ima koristi se za filtriranje grupa.
Agregacija
Where klauzula ne može se koristiti s funkcijama združivanja osim ako nije u podupitu sadržanom u Having klauzuli. Funkcije združivanja mogu se koristiti s klauzulom koja ima.
Metoda filtriranja
Klauzula where se ponaša kao predfilter. Klauzula koja ima ponaša se kao filtar posta.
Grupiraj prema redoslijedu klauzula
Krauzula where koristi se prije klauzule Grupiraj po. Klauzula koja ima koristi se nakon klauzule Grupiraj po.
Koristi se s
Odredba where se može koristiti s odabirom, ažuriranjem i brisanjem. Klauzula koja ima koristi se samo s odabirom.

Sažetak – gdje naspram imanja klauzule u SQL

Structured Query Language (SQL) je jezik koji se koristi u relacijskim bazama podataka. Gdje imaju dvije su klauzule u SQL-u. U ovom se članku raspravljalo o razlici između klauzule "gdje" i "imanje". Razlika između odredbe where i having u SQL-u je u tome što se where koristi za filtriranje zapisa prije grupiranja ili agregacije, dok se Having koristi za filtriranje zapisa nakon grupiranja ili agregacije.

Preporučeni: