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

Nhận sự khác biệt giữa số lượng của hai truy vấn con

Bạn có thể làm điều đó với

SELECT some_id
  , SUM(
      CASE
        WHEN vote = 'UP'
        THEN 1
        WHEN vote = 'DOWN'
        THEN -1
        ELSE 0
      END
    ) as vote_score
FROM votes
GROUP BY some_id 

Lưu ý rằng cách tiếp cận tốt hơn là lưu trữ +1 hoặc -1 trong phiếu bầu, sau đó bạn có thể thực hiện:

SELECT some_id, SUM(vote) as vote_score
FROM votes
GROUP BY some_id

BTW nếu định dạng của tôi trông kỳ lạ đối với bạn, tôi đã giải thích điều đó trong http://bentilly.blogspot.com/2011/02/sql-formatting-style.html .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Trình kích hoạt MySQL và SUM ()

  2. LỖI 1030 (HY000) ở dòng 25:Có lỗi 168 từ công cụ lưu trữ

  3. Nối các bảng với giá trị dấu phẩy

  4. khởi động lại máy chủ mysql trên windows 7

  5. Hiệu suất tốt nhất để Lấy kết quả MySQL EAV dưới dạng Bảng quan hệ là gì