Database
 sql >> Baza danych >  >> RDS >> Database

Jak nie wyświetlać duplikatów w SQL?

Problem:

Chcesz wyświetlić niezduplikowane rekordy w SQL.

Przykład:

Nasza baza danych zawiera tabelę o nazwie City z danymi w kolumnach id , name i country .

id imię kraj
1 Madryt Hiszpania
2 Barcelona Hiszpania
3 Warszawa Polska
4 Kraków Polska

Uzyskajmy nazwy krajów bez duplikatów.

Rozwiązanie:

Użyjemy słowa kluczowego DISTINCT . Oto zapytanie:

SELECT
DISTINCT country
FROM City;

Oto wynik zapytania:

kraj
Hiszpania
Polska

Dyskusja:

Jeśli chcesz, aby zapytanie zwracało tylko unikalne wiersze, użyj słowa kluczowego DISTINCT po SELECT . DISTINCT może służyć do pobierania unikalnych wierszy z jednej lub kilku kolumn. Musisz wymienić kolumny po DISTINCT słowo kluczowe.

Jak to działa pod maską? Kiedy zapytanie jest wykonywane, najpierw wybierany jest cały zestaw danych, a następnie DISTINCT usuwa wiersze, które są zduplikowane, biorąc pod uwagę wybrane kolumny.

W naszym przykładzie zarówno Hiszpania, jak i Polska występują w tabeli dwukrotnie. Jednak po zastosowaniu słowa kluczowego DISTINCT , każdy z nich jest zwracany tylko raz.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Poprawka błędu 2008 R2, która łamie RCSI

  2. Zaktualizowane opcje warstwy bazy danych Azure SQL

  3. Wzorzec danych referencyjnych:rozszerzalny i elastyczny

  4. Systemy informacyjne, dane i informacje

  5. Co to są operatory SQL i jak działają?