Różnica między klauzulą gdzie i posiadaniem w SQL

Spisu treści:

Różnica między klauzulą gdzie i posiadaniem w SQL
Różnica między klauzulą gdzie i posiadaniem w SQL

Wideo: Różnica między klauzulą gdzie i posiadaniem w SQL

Wideo: Różnica między klauzulą gdzie i posiadaniem w SQL
Wideo: Difference Between WHERE and HAVING Clause | SQL Tutorial | Where vs Having 2024, Listopad
Anonim

Key Difference – gdzie kontra posiadanie klauzuli w SQL

Dane są ważne dla każdej organizacji. Dlatego konieczne jest przechowywanie danych w zorganizowany sposób, aby je odzyskać. Dane są przechowywane w tabelach. Baza danych składa się ze zbioru tabel. Jednym z popularnych typów baz danych są relacyjne bazy danych. W relacyjnej bazie danych tabele są ze sobą powiązane. Na przykład klient tabeli jest połączony z tabelą zamówień. Relational Database Management System (RDBMS) to system zarządzania bazą danych oparty na modelu relacyjnym. Służy do zarządzania relacyjnymi bazami danych. Niektóre przykłady RDBMS to MySQL, MSSQL i Oracle. Strukturalny język zapytań (SQL) to język używany do manipulowania i pobierania danych w relacyjnej bazie danych. W SQL istnieją różne klauzule służące do wykonywania różnych zadań. Dwóch z nich jest gdzie i ma. W tym artykule omówiono różnicę między klauzulą where i having w SQL. Kluczowa różnica między klauzulą where i having w SQL polega na tym, że klauzula where jest używana do filtrowania rekordów przed grupowaniem lub agregacją, podczas gdy klauzula have służy do filtrowania rekordów po grupowaniu lub wystąpieniu agregacji.

Jaka jest klauzula where w SQL?

Pomaga pobrać, zaktualizować lub usunąć określony zestaw danych z tabeli zgodnie z podanym warunkiem. Programista może użyć klauzuli where, aby ograniczyć i pobrać tylko wymagane dane. Zapytanie jest wykonywane tylko na rekordach, w których warunek określony w klauzuli where jest prawdziwy. Może być używany do wybierania, aktualizowania i usuwania.

Odnieś się do poniższej tabeli uczniów,

Różnica między klauzulą where i having w SQL_Figure 02
Różnica między klauzulą where i having w SQL_Figure 02
Różnica między klauzulą where i having w SQL_Figure 02
Różnica między klauzulą where i having w SQL_Figure 02

Aby wybrać imię i wiek ucznia, którego identyfikator studenta jest równy 3, można użyć następującego zapytania SQL.

wybierz imię i nazwisko, wiek ucznia, gdzie identyfikator_ucznia=3;

Możliwe jest również użycie operatorów takich jak nierówny (!=), większy niż (>), mniejszy niż (=), mniejszy lub równy (<=). Aby wybrać identyfikator studenta i nazwisko, którego wiek nie jest równy 15, można użyć następującego zapytania SQL.

wybierz identyfikator studenta, imię od ucznia, gdzie wiek!=15;

Aby zmienić wiek ucznia 2 na 13, można użyć następującego zapytania.

zaktualizuj wiek ucznia=13, gdzie id=3;

Aby usunąć rekord, którego identyfikator studenta wynosi 4, można użyć następującego zapytania.

usuń z ucznia, gdzie identyfikator studenta=4;

Operatorów i lub można używać do łączenia wielu warunków.

wybierz imię i nazwisko ucznia, gdzie identyfikator_ucznia=1 i wiek=15; zapytanie pobierze nazwę Ann.

Oto kilka przykładów klauzuli where w SQL. Jeśli istnieje klauzula Group By, klauzula where pojawia się przed nią.

Co oznacza klauzula w SQL?

Język SQL udostępnia funkcje ułatwiające wykonywanie obliczeń. Są one znane jako funkcje agregacji. Min () służy do znalezienia najmniejszej wartości wybranej kolumny. Max () służy do znalezienia maksymalnej wartości wybranej kolumny. Średnia () służy do znalezienia średniej w kolumnie, a sum () do znalezienia sumy w kolumnie. Oto kilka przykładów funkcji agregujących. Zapoznaj się z poniższą tabelą zamówień,

Różnica między klauzulą where i having w SQL_Figure 03
Różnica między klauzulą where i having w SQL_Figure 03
Różnica między klauzulą where i having w SQL_Figure 03
Różnica między klauzulą where i having w SQL_Figure 03

Programista może napisać zapytanie SQL w następujący sposób, aby pobrać klientów, których saldo przekracza 2000.

wybierzz grupy zamówień według klienta posiadającego sumę (saldo) > 2000.

Spowoduje to wydrukowanie rekordów klientów, których suma salda jest większa niż 2000. Wydrukowane zostaną rekordy klientów Ann i Alex.

Klauzula having służy do pobierania wartości dla grup, które spełniają określone warunki. Dlatego w wyniku tego pojawi się grupa, która spełnia dany warunek. Klauzula mająca pojawia się po klauzuli grupowania. Jeśli klauzula group-by nie jest obecna, klauzula having będzie działać podobnie do klauzuli where.

Jakie są podobieństwa między klauzulą gdzie a posiadaniem w SQL?

  • Oba są klauzulami w strukturalnym języku zapytań.
  • Oba mogą być użyte do filtrowania pobierania zestawu danych.

Jaka jest różnica między klauzulą gdzie a posiadaniem w SQL?

where a posiadanie klauzuli w SQL

Where to klauzula SQL używana do określenia warunku podczas pobierania danych z pojedynczej tabeli lub łączenia z wieloma tabelami. Posiadanie jest klauzulą SQL, która określa, że instrukcja SQL select powinna zwracać tylko wiersze, w których wartości zagregowane spełniają określone warunki.
Cel
Klauzula where służy do filtrowania wierszy. Klauzula having służy do filtrowania grup.
Agregacja
Klauzula WHERE nie może być używana z funkcjami agregacji, chyba że znajduje się w podzapytaniu zawartym w klauzuli Mając. Funkcje agregacji mogą być używane z klauzulą having.
Metoda filtrowania
Klauzula where zachowuje się jak filtr wstępny. Klauzula having zachowuje się jak filtr pocztowy.
Grupuj według kolejności klauzul
Klauzula where jest używana przed klauzulą Group By. Klauzula having jest używana po klauzuli Group By.
Używane z
Klauzula where może być użyta z select, update i delete. Klauzula having jest używana tylko z select.

Summary – gdzie kontra posiadanie klauzuli w SQL

Język zapytań strukturalnych (SQL) to język używany w relacyjnych bazach danych. Gdzie mają to dwie klauzule w SQL. W tym artykule omówiono różnicę między klauzulą gdzie i posiadaniem. Różnica między klauzulą where i having w języku SQL polega na tym, że where służy do filtrowania rekordów przed grupowaniem lub agregacją, podczas gdy have służy do filtrowania rekordów po grupowaniu lub wystąpieniu agregacji.

Zalecana: