SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Jak dodać tylko różne wartości za pomocą SQLite Sum()

W SQLite Sum() funkcja akceptuje opcjonalny DISTINCT słowo kluczowe, które umożliwia dodanie tylko odrębnych wartości w grupie. Oznacza to, że usuwa z obliczeń wszelkie duplikaty.

Jeśli więc istnieją, powiedzmy, trzy wiersze zawierające 10, tylko jeden z nich zostanie uwzględniony w wynikach.

Składnia

Składnia przy użyciu DISTINCT słowo kluczowe wygląda tak:

Sum(DISTINCT X)

Gdzie X to nazwa kolumny, dla której dodajesz wartości.

Przykład

Rozważ poniższą tabelę o nazwie Products :

ProductId   ProductName    Price     
----------  -------------  ----------
1           Widget Holder  139.5     
2           Blue Widget    10.0      
3           Red Widget     10.0      
4           Green Widget   10.0      
5           Widget Stick   89.75     
6           Foo Cap        11.99     

Poniżej znajduje się przykład uzyskania odrębnej sumy wszystkich cen.

SELECT Sum(DISTINCT Price) 
FROM Products;

Wynik:

251.24

Znowu, ale tym razem dołączam również „niewyraźną” sum() dla porównania.

SELECT 
  Sum(Price),
  Sum(DISTINCT Price) 
FROM Products;

Wynik:

Sum(Price)  Sum(DISTINCT Price)
----------  -------------------
271.24      251.24             

Tak więc niewyraźna sum(Price) dodano wszystkie wartości niezależnie od duplikatów. Ale sum(DISTINCT Price) dodał tylko różne wartości.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak działa funkcja Strftime() w SQLite

  2. nullvalue:Pokaż wartości NULL w SQLite

  3. Jak Group_Concat() działa w SQLite

  4. SQLiteDatabase android IllegalStateException

  5. Co to jest SQLite?