Đầu tiên hết, nối hai bảng lại
Truy vấn, đếm số ph, đếm số ph vis, đếm số ph invis
để đếm số vis/invis, dùng lệnh case
Đương nhiên, để có thể đếm ý nghĩa, phải group lại
Lưu ý, phải dùng left join vì có hững sp không có phản hồi
Code:
select sp.idsanpham, sp.tensanpham,
count(ph.idphanhoi) soPhanHoi,
sum(case ph.visible when 1 then 1 else 0 end) phCoHienThi,
sum(case ph.visible when 0 then 1 else 0 end) phKhongHienThi
from SanPham sp left outer join PhanHoi ph on sp.idsanpham = ph.idsanpham
group by sp.idsanpham, sp.tensanpham
tb thiết kế gì mà dùng nửa tiếng Anh nửa tiếng Việt vầy nè trời!
Bookmarks