Wybierz * gdzie istnieje - mysql

Wybierz * gdzie istnieje - mysql
MySQL (dobrze znany RDBM) może w zorganizowany sposób przechowywać ogromne ilości danych. W tej bazie danych dane są filtrowane za pomocą różnych zapytań. Dokładniej, "Wybierz * gdzie istnieje”To powszechne zapytanie MySQL, które używa„Istnieje„Operator. „„ISTNIEĆ”Operator zwraca dane wyjściowe z tabeli tylko wtedy, gdy rozroczenie zwraca jedną lub więcej rekordów po sprawdzeniu określonego warunku.

Ten post omówi użycie „Wybierz * gdzie istnieje".

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

Rozbijmy składnię „Wybierz * gdzie istnieje” zapytanie:

Wybierz * z miejsca, w którym istnieje
(Wybierz * z warunków);

Tutaj:

  • „„WYBIERAĆ”Instrukcja służy do filtrowania rekordów.
  • „„*”Jest znakiem wieloznacznym, który reprezentuje wszystkie kolumny.
  • „„GDZIE”Klauzula pobiera dane, które spełniają określony warunek.
  • „„Istnieje”Operator zwraca wyniki, jeśli rozroczenie zwraca jeden lub więcej wierszy po sprawdzeniu określonego warunku.

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

Zobaczmy przykład, aby filtrować dane z „ProduktID produktu”Z„Zamówienie„Tabela jest równa„IDProdukt„Tabela, uruchom to zapytanie:

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

Dane wyjściowe zawiera rekordy spełniające określony warunek:

Metoda 2: Jak użyć „Wybierz * gdzie istnieje” z operatorem logicznym i operatorem relacyjnym?

Dzięki operatorowi istnieje, operatorzy logiczni i relacyjni, tacy jak „i”, „lub”, „=”, „”, mogą być określone w podtrzymaniu.

Na przykład chcesz wyodrębnić dane z „Produkt”Tabela, jeśli podrekonIDProdukt„Tabela jest równa„ID produktuOrderItem" tabela I "Cena jednostkowa" jest równe "22”:

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

Wyjście będzie zawierać filtrowane rekordy:

Zobaczmy podobny przykład, ale zamiast „UnitPrice = 22", pisać "Cena jednostkowa < 6”:

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

Wyjście dostarczy rekordy uzyskane z zapytania:

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

„„Wybierz * gdzie istnieje”Można użyć z„LIMIT„Klauzula, która określa liczbę wierszy dla wyniku.

Na przykład, jeśli chcesz wyodrębnić tylko 4 rzędy „Dostawca”Tabela, jeśli„IDDostawca„Tabela jest równa„Identyfikator dostawcyProdukt”Tabela, użyj tego zapytania:

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

Wyjście wyświetla tylko „4” wiersze, zgodnie z definicją klauzuli „limitu”:

Wniosek

W MySQL, „Wybierz * gdzie istnieje”Zapytanie wyodrębnia rekordy, jeśli rozroczenie zwraca jeden lub więcej niż jeden wyniki na podstawie określonego warunku. Jednak warunek można zdefiniować za pomocą operatorów logicznych i relacyjnych. „„LIMIT”Klauzula służy do określenia liczby wierszy wyjścia. W tym artykule pokazano użycie zapytania „Wybierz * gdzie istnieje”.