Wprowadzenie do DISTINCT w Oracle
W tym artykule dowiemy się o DISTINCT w Oracle. Jednym z ważnych słów kluczowych, których używamy, gdy odzyskujemy nasze wartości z jednej lub wielu tabel w bazie danych, jest słowo kluczowe DISTINCT. Teraz przejdźmy do słowa kluczowego DISTINCT. Kiedy mówimy lub słyszymy wyraźne angielskie słowo, pierwszą rzeczą, która przychodzi nam na myśl, jest UNIKALNE lub oddzielone od innych. To samo dotyczy również bazy danych. W tabeli mogą znajdować się setki rekordów, a z tych rekordów możemy mieć zduplikowane rekordy. To słowo kluczowe pomaga nam odzyskiwać tylko unikalne rekordy.
Składnia
Przyjrzymy się teraz składni odrębnego słowa kluczowego w Oracle. W tym przypadku mamy dwie opcje składni. Pierwsza składnia polega na użyciu odrębnego słowa kluczowego bez warunków, a druga na odrębnym słowie kluczowym z warunkami.
Składnia bez warunku: Select DISTINCT(expressions) from table_names;
Składnia z Select DISTINCT(expressions) from table_names (where conditions);
: Select DISTINCT(expressions) from table_names (where conditions);
Parametry
Przyjrzymy się teraz różnym parametrom zastosowanym w dwóch powyższych składniach.
- wyrażenia: podajemy nazwy kolumn lub wyrażenia, które chcemy wykonać.
- table_names: Podajemy nazwy tabel, z których chcemy rekordy. Ważną informacją, na którą należy zwrócić uwagę, jest to, że po klauzuli powinna znajdować się przynajmniej jedna nazwa tabeli.
- (Gdzie warunki): Jest to opcjonalne Jeśli podamy warunek where, wówczas wartości zostaną pobrane po wykonaniu zapytania tylko wtedy, gdy wspomniany warunek jest spełniony.
Uwaga: jedną z ważnych informacji, o których należy pamiętać, jest to, że słowo kluczowe DISTINCT traktuje wartość zerową również jako wartość unikalną. Jeśli więc w kolumnie mamy wartości puste i używamy słowa kluczowego DISTINCT, aby pobrać unikalne wartości, to również wyświetli wartość NULL na wyjściu.
Jak korzystać z DISTINCT w Oracle?
Do tej pory omawialiśmy, co jest słowem kluczowym DISTINCT w wyroczni, składnią słowa kluczowego DISTINCT i różnymi parametrami używanymi w składni.
Teraz przyjrzymy się różnym przykładom, aby dowiedzieć się, jak efektywnie używać DISTINCT w Oracle. Zanim przejdziemy do przykładów, skorzystamy z tabeli PRACOWNIK już utworzonej w bazie danych. Tabela składa się z pięciu kolumn: NAME, VEHICLE_NAME, EMPLOYEE_ID, VEHICLE_ID i CITY. Poniżej znajduje się zrzut ekranu wartości obecnych w tabeli pracowników. Zapytanie, którego będziemy używać w tym celu, jest podstawową instrukcją SELECT
SELECT * from employee;
Po uruchomieniu w SQL developer otrzymujemy wszystkie wartości, jak pokazano poniżej.
Dane wyjściowe: tabela pracowników
Teraz zacznijmy od przykładów.
1. Unikalne wartości w kolumnie bez warunku
W tym przykładzie użyjemy DISTINCT, aby znaleźć unikalne wartości w określonej kolumnie tabeli bez żadnych warunków. Na przykład znajdziemy unikalne wartości obecne w kolumnie pojazdu w tabeli pracowników. Zapytanie pokazano poniżej:
Kod:
select DISTINCT(vehicle_name) from employee;
Wynik:
W powyższym zapytaniu, jak widać, podaliśmy nazwę kolumny, a także nazwę tabeli. Po wykonaniu powyższego zapytania w SQL developer otrzymujemy poniższe dane wyjściowe.
2. Unikalne wartości w kolumnie z warunkiem
W tym przykładzie znajdziemy unikalne wartości w kolumnie, podobnie jak w poprzednim przykładzie, ale z niewielką modyfikacją. W tym celu wyodrębnimy unikalne wartości na podstawie pewnych warunków. Jako przykład weźmy unikalne wartości nazwy pojazdu w kolumnie z tabeli pracowników, gdy miasto nie jest Kalkuta. Zapytanie o to samo znajduje się poniżej.
Kod:
select DISTINCT(VEHICLE_NAME) from employee where CITY != 'KOLKATA';
Wynik:
Jeśli zobaczysz powyższe zapytanie, zapytanie powinno zwrócić wartości, które spełniają warunek where. Po wykonaniu powyższego zapytania w SQL developer otrzymujemy poniższe dane wyjściowe.
Jak widać w poprzednim przykładzie, mieliśmy sześć unikalnych wartości, podczas gdy w drugim przykładzie mamy pięć unikalnych wartości, ponieważ dodaliśmy określony warunek w drugim przykładzie.
3. Unikalne wartości z wielu kolumn
W tym przykładzie za pomocą DISTINCT znajdziemy unikalne wartości w wielu kolumnach. Tak więc we wcześniejszych przykładach używaliśmy pojedynczych kolumn, ale w tym przypadku będziemy używać wielu kolumn. Załóżmy na przykład, że chcemy znaleźć unikalne wartości zarówno nazwy pojazdu, jak i miasta, a wyniki powinny być uporządkowane rosnąco w zależności od kolumny miasta. Spójrzmy na zapytanie dla tego samego poniżej.
Kod:
select DISTINCT VEHICLE_NAME, CITY from employee ORDER BY CITY ASC;
Wynik:
W powyższym zapytaniu najpierw dane są wyodrębniane w porządku rosnącym na podstawie miasta kolumny, a następnie obie wartości w kolumnach nazwa pojazdu i miasto są używane do uzyskania unikalnych par. Po wykonaniu powyższego zapytania w SQL developer otrzymujemy poniższe dane wyjściowe.
4. ODRÓŻNIJ wartościami NULL
Wcześniej w artykule omawialiśmy, że DISTINCT traktuje wartości NULL jako wartości unikalne, więc jeśli mamy kolumnę z wartościami null. Będzie to traktowane jako unikalna wartość. Na przykład mamy puste wartości w kolumnie CITY, które można zobaczyć na zrzucie ekranu podanym na początku artykułu, w którym pokazane są wszystkie wartości tabeli pracowników. Dlatego zastosujemy DISTINCT w kolumnie CITY, aby dowiedzieć się, jaki wpływ na wynik mają wartości puste. Zapytanie o to samo pokazano poniżej.
Kod:
select DISTINCT CITY from employee;
Wynik:
Po wykonaniu powyższego zapytania w SQL developer otrzymujemy poniższe dane wyjściowe.
Jak widzimy, wynik pokazuje null jako odrębną wartość. To pokazuje, że DISTINCT traktuje null jako unikalną wartość.
Wniosek - DISTINCT w Oracle
W tym artykule omówiliśmy słowo kluczowe DISTINCT w oracle, składnie używane do używania DISTINCT w zapytaniach, parametry używane w tych składniach, a następnie poprzez różne przykłady dowiedzieliśmy się, w jaki sposób możemy używać DISTINCT w Oracle do rozwiązywania naszych wymaganych zadań.
Polecane artykuły
To jest przewodnik po DISTINCT w Oracle. Tutaj omawiamy słowo kluczowe DISTINCT w oracle, składnie używane do używania DISTINCT w kodach i wynikach. Możesz również przejrzeć nasze inne powiązane artykuły, aby dowiedzieć się więcej -
- Dołącza do Oracle
- Co to jest baza danych Oracle
- Funkcje ciągów Oracle
- Oracle Warehouse Builder