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

Chọn số câu trả lời MCQ dựa trên câu trả lời của câu hỏi trước

Nếu bạn không muốn thực hiện mod, thì bạn cần chọn questionID để thay thế. Và tôi đã sử dụng tham gia chéo để nhận được một số phân đoạn khác không được phản hồi. và trong một câu lệnh chọn lọc, bạn trường hợp câu lệnh đếm segmentName thành 0.

SELECT
    bb.name,
    s.name,
    CASE WHEN s.id IN(
        SELECT
            r.segment_id FROM brandlift_respondent r) THEN
        COUNT(q2ac.brand_id)
    ELSE
        0
    END AS CountNumber
FROM
    brandlift b
    LEFT JOIN brandlift_brand bb ON b.campaign_id = bb.campaign_id
    LEFT JOIN brandlift_respondent r ON b.campaign_id = r.campaign_id
    
    CROSS JOIN brandlift_segment s
    
    LEFT JOIN brandlift_question q1 ON b.campaign_id = q1.campaign_id AND q1.ordinal = 1
    LEFT JOIN brandlift_answer q1a ON r.id = q1a.respondent_id AND q1.id = q1a.question_id
    INNER JOIN brandlift_answer_content q1ac ON q1a.id = q1ac.answer_id AND q1ac.brand_id = 1 -- the "flagship brand" id
        
    LEFT JOIN brandlift_question q2 ON q1.campaign_id = q2.campaign_id AND q2.ordinal = 2
    LEFT JOIN brandlift_answer q2a ON q1a.respondent_id = q2a.respondent_id AND q2.id = q2a.question_id
    LEFT JOIN brandlift_answer_content q2ac ON q2a.id = q2ac.answer_id AND bb.id = q2ac.brand_id
WHERE
    b.campaign_id = :campaign_id -- parameter
    AND R.segment_id = s.id OR s.id NOT IN(SELECT r.segment_id FROM brandlift_respondent r)
GROUP BY
    bb.name,
    s.name,
    s.id

kết quả hiển thị như vậy




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự cố npgsql trong ứng dụng c # - Một kết nối hiện có đã bị buộc đóng bởi máy chủ từ xa

  2. Chuỗi xuất psql postgres không có ký tự thoát

  3. Có lý do gì không sử dụng tìm kiếm toàn văn tích hợp sẵn của PostgreSQL trên Heroku?

  4. Làm thế nào để xác định bí danh toán tử trong PostgreSQL?

  5. Cách tính số lượng không tăng cao từ bảng không chuẩn hóa