Wybierz * gdzie nie istnieje - MySQL

Wybierz * gdzie nie istnieje - MySQL
MySQL to ustrukturyzowany język zapytania, który może zarządzać i manipulować danymi przechowywanymi w tabelach bazy danych. Dokładniej, NIE ISTNIEJE Operator jest operatorem logicznym używanym w obrębie GDZIE klauzula do pobrania danych poprzez wykluczenie rekordów pasujących do określonego warunku. Komenda "Wybierz * gdzie nie istnieje" zawiera "*,”Co oznacza wybranie wszystkich kolumn tabeli, a następnie zastosowanie warunku obecnego w klauzuli Where.

Ten post omówi użycie „Wybierz * gdzie nie istnieje„W MySQL.

Jak używać „Wybierz * gdzie nie istnieje” w MySQL?

Przed użyciem danego polecenia, najpierw zrozum jego różne sekcje. W MySQL:

  • „„WYBIERAĆ”Instrukcja pobiera dane
  • „„GDZIE”Klauzula pobiera dane pasujące do określonego warunku
  • „„NIE ISTNIEJE„Operator w klauzuli Where wykluje rekordy pasujące do określonego warunku

Składnia

Używać "Wybierz * gdzie nie istnieje”, Postępuj zgodnie z podaną składnią:

Wybierz * Z Tabele 1-Nazwa, gdzie nie istnieje
(Wybierz * z Tabeli2-name Where Ward);

„„*”Reprezentuje wszystkie kolumny, a zapytanie wewnątrz nawiasów to rozdzielczość na podstawach, których dane zostaną pobrane z tabeli 1. Tutaj zapytanie „Wybierz * gdzie nie istnieje” wyodrębnia rekordy z jednej tabeli, na podstawie wykluczenia danych pasujących do określonego „warunku” z drugiej tabeli.

Metoda 1: Jak użyć „Wybierz * gdzie nie istnieje” z prostym podziałem?

Zobaczmy przykład, aby filtrować dane z „Produkt”Tabela, wykluczając rekordy oparte na warunku, że„ID produktuOrderItem„Tabela jest równa„IDProdukt„Tabela, uruchamiając zapytanie:

Wybierz * z produktu, w którym nie istnieje
(Wybierz * Z zamówienia, gdzie OrderItem.ProductID = produkt.ID);

Wyjście wyświetla rekord, który nie spełnia określonego warunku, ponieważ dane te są pomyślnie wykluczone:

Zobaczmy kolejny przykład, aby wyodrębnić rekordy z „Dostawca”Tabela, w której„ „ID”Tego tabeli nie jest równe„Identyfikator dostawcyProdukt" tabela:

Wybierz * od dostawcy, gdzie nie istnieje
(Wybierz * Z produktu, w którym produkt.Dostawca = dostawca.ID);

Metoda 2: „Wybierz * gdzie nie istnieje” z operatorami logicznymi i relacyjnymi

Relacyjne, a także operatory logiczne, mogą być wykorzystane w warunkach z operatorem nie istnieje, aby wykluczyć dane na podstawie wielu warunków.

Na przykład konieczne jest pobranie zapisu „Produkt”Tabela, wykluczając rekordy, gdzie„ID”Tego stołu jest równe„ID produktuOrderItem" tabela "I„„ „Cena jednostkowa" jest równe "22”:

Wybierz * z produktu, w którym nie istnieje
(Wybierz * Z zamówienia, gdzie OrderItem.ProductID = produkt.ID i UnitPrice = 22);

Zobaczmy kolejny przykład, jeśli chcesz wyodrębnić dane „Produkt”Tabela, wykluczając rekordy, gdzie„ID”Tego stołu jest równe„ID produktuOrderItem”Tabela i„Cena jednostkowa" jest mniej niż "6”:

Wybierz * z produktu, w którym nie istnieje
(Wybierz * Z OrderItem
Gdzie OrderItem.ProductID = produkt.ID i jednostki < 6);

Wyświetlone dane wyjściowe, wyodrębnione rekordy po wykluczeniu rekordów określonych w stanie:

Metoda 3: Jak użyć „Wybierz * gdzie nie istnieje” z klauzulą ​​„Limit”?

„„LIMIT„Klauzula może być używana z„Wybierz * gdzie nie istnieje”Zapytanie o określenie liczby wyjściowych dla wyniku. Na przykład, jeśli chcesz wyodrębnić tylko „7” rzędy ze stołu ”Produkt„Wykluczając rekordy, w których„ID”Tego stołu jest równe„ID produktu" z "OrderItem" I "Cena jednostkowa”Jest mniej niż„ 6 ”:

Wybierz * z produktu, w którym nie istnieje
(Wybierz * Z zamówienia, gdzie OrderItem.ProductID = produkt.ID i jednostki < 6) limit 7;

W wyjściu tabela będzie zawierać 7 wierszy danych po wykluczeniu rekordów zgodnie z warunkami.

Wniosek

W MySQL, „Wybierz * gdzie nie istnieje”Zapytanie wyodrębnia zapisy nieistniejące na podstawie określonego warunku. Ponadto do odpowiedniego zapytania można dodać operatory logiczne i relacyjne oraz klauzulę limitu. W tym artykule pokazano użycie zapytania „Wybierz * gdzie nie istnieje” w MySQL.