SQLite
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> SQLite

Cách chỉ thêm các giá trị riêng biệt với SQLite Sum ()

Trong SQLite, Sum() hàm chấp nhận một DISTINCT tùy chọn từ khóa cho phép bạn chỉ thêm các giá trị riêng biệt trong nhóm. Có nghĩa là, nó loại bỏ bất kỳ bản sao nào khỏi tính toán của nó.

Vì vậy, nếu có giả sử, ba hàng chứa 10, chỉ một trong những hàng đó sẽ được đưa vào kết quả.

Cú pháp

Cú pháp khi sử dụng DISTINCT từ khóa giống như sau:

Sum(DISTINCT X)

Ở đâu X là tên của cột mà bạn đang thêm các giá trị.

Ví dụ

Hãy xem xét bảng sau được gọi là 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     

Dưới đây là một ví dụ về việc nhận được tổng khác biệt của tất cả các mức giá.

SELECT Sum(DISTINCT Price) 
FROM Products;

Kết quả:

251.24

Đây là một lần nữa, nhưng lần này tôi cũng bao gồm một sum() “không khác biệt” để so sánh.

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

Kết quả:

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

Vì vậy, sum(Price) không khác biệt đã thêm tất cả các giá trị bất kể trùng lặp. Nhưng sum(DISTINCT Price) chỉ thêm các giá trị riêng biệt.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bắt đầu với Tìm kiếm toàn văn SQLite

  2. IntentService đang đóng băng giao diện người dùng ứng dụng của tôi

  3. Nhận vị trí của một ký tự trong một chuỗi trong SQLite với Guid ()

  4. 2 cách liệt kê các bảng trong cơ sở dữ liệu SQLite

  5. IllegalStateException:cơ sở dữ liệu đã đóng (sử dụng ViewPager)