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

Cách tính tổng nhiều số từ nhiều bảng

Đây là SQL Fiddle cho thấy rằng truy vấn dưới đây thực sự hoạt động. Như bạn có thể thấy, tôi đang tạo các bảng và điền chúng với dữ liệu bạn có trong câu hỏi của mình. Sau đó, tôi đang thực hiện truy vấn dưới đây để thu thập dữ liệu bạn cần. Tôi đã xác minh số lượng và chúng đang tính toán chính xác.

SELECT PM.*, 
  (
    PM.SongCount + PM.LessonCount + 
    PM.SongCommCount + PM.LessonCommCount
  ) AS TotalCount 
FROM (
  SELECT P.poster_id, 
    (
      SELECT COUNT(poster_id) 
      FROM song S 
      WHERE P.poster_id = S.poster_id
    ) AS SongCount, 
    (
      SELECT COUNT(poster_id) 
      FROM lesson L 
      WHERE P.poster_id = L.poster_id
    ) AS LessonCount, 
    (
      SELECT COUNT(poster_id) 
      FROM SongComment SC 
      WHERE P.poster_id = SC.poster_id
    ) AS SongCommCount, 
    (
      SELECT COUNT(poster_id) 
      FROM LessonComment LC 
      WHERE P.poster_id = LC.poster_id
    ) AS LessonCommCount 
  FROM poster AS P 
  LIMIT 0, 50
) AS PM
ORDER BY 
  (
    PM.SongCount + PM.LessonCount + 
    PM.SongCommCount + PM.LessonCommCount
  ) DESC


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Một đường tắt để cập nhật một hàng bảng trong cơ sở dữ liệu?

  2. Câu hỏi truy vấn MySQL đơn giản

  3. Yii2:không thể cập nhật giá trị cột theo + 1

  4. sql xóa tất cả các hàng cũ hơn 30 ngày

  5. Lỗi khi cài đặt mysqlclient cho python trên Ubuntu 18.04