반응형
SQL 쿼리 결과를 보고서 양식 테이블에 출력하는 방법은 무엇입니까?
테이블 필드는 다음과 같습니다.
Invitations (user_id, type, created_at, completed_at)
저는 현재 아래의 쿼리를 실행하고 수동으로 계산하여 지난 주 초대 대화율을 얻을 수 있습니다.
SELECT *
FROM invitations
WHERE created_at >= curdate() - INTERVAL DAYOFWEEK(curdate())+6 DAY
AND created_at < curdate() - INTERVAL DAYOFWEEK(curdate())-1 DAY
AND user_id != 1
AND type = 'email'
ORDER BY completed_at, created_at
SQL을 사용하면 더 많은 보고서를 출력할 수 있습니까?반환되는 내용:
LAST WEEK | Total Invitations | Invitations Completed | % Conversion
| 100 | 50 | 50%
TWO WEEKS | Total Invitations | Invitations Completed | % Conversion
| 100 | 60 | 60%
SQL로 이런 것이 가능합니까, 아니면 애플리케이션 로직으로 이런 것을 만들어야 합니까?
아마도 당신은 다음을 사용해 집계하고 싶을 것입니다.count()
그리고.UNION ALL
.
SELECT 'LAST WEEK' `Period`,
count(created_at) `Total Invitations`,
count(completed_at) `Invitations completed`,
concat(count(completed_at) / count(created_at) * 100, '%') `% Conversion`
FROM invitations
WHERE created_at >= curdate() - INTERVAL dayofweek(curdate()) + 6 DAY
AND created_at < curdate() - INTERVAL dayofweek(curdate()) - 1 DAY
AND user_id <> 1
AND type = 'email'
UNION ALL
SELECT 'TWO WEEKS' `Period`,
count(created_at) `Total Invitations`,
count(completed_at) `Invitations completed`,
concat(count(completed_at) / count(created_at) * 100, '%') `% Conversion`
FROM invitations
WHERE created_at >= curdate() - INTERVAL dayofweek(curdate()) + 13 DAY
AND created_at < curdate() - INTERVAL dayofweek(curdate()) - 1 DAY
AND user_id <> 1
AND type = 'email';
count(completed_at)
행만 계산합니다. 여기서completed_at
null이 아닙니다.내가 추측하기엔completed_at
초대가 완료되지 않은 경우에만 null입니다.count(created_at)
아날로그로 작동합니다.하지만 해당 열에 null 값이 없다고 가정합니다(만약 그런 값이라면 해당 행은 의 조건과 일치하지 않습니다).WHERE
조항이 있어서 그들은 심지어 개표대상자도 아닙니다.)UNION ALL
(어쨌든 그 안에 있지 않은 중복을 제거하지 않고) 두 결과 집합을 최소한 다음과 같이 통합합니다.Period
차이가 있습니다.
언급URL : https://stackoverflow.com/questions/51528558/how-to-output-the-results-of-a-sql-query-into-a-report-form-table
반응형
'programing' 카테고리의 다른 글
Jestwatch에서 파일을 제외하려면 어떻게 해야 합니까? (0) | 2023.10.10 |
---|---|
java.sql.SQL 비일시적 연결예외. (0) | 2023.10.10 |
SYS_CONTEXT/USERENV에서 모든 파라미터 읽기 (0) | 2023.10.10 |
XML 스키마 열거형으로 속성을 제한하는 방법 (0) | 2023.10.10 |
파이썬으로 경로 이름만 얻는 방법? (0) | 2023.10.10 |