질문에 대해 동그라미를 치고 있으며 내가 매우 처음이므로 도움을 주시면 감사하겠습니다. Postgre SQL, 버전 : 9.5.8을 사용하고 있습니다.
내가하려는 것 :
전체 판매 대비 부분 판매 비율을 계산하고 싶습니다.
내가 완전히 엉망으로 만드는 부분은 최종 선택입니다. 여기서 "sale"테이블에서 동일한 열 COUNT (sale_id)를 두 번 선택하지만 COUNT (sale_id)를 2 개의 다른 조건 (하나는 'WHERE'및 하나없이) 2 개의 새 열을 만듭니다. 대신 별도의 테이블로 조인해야합니까?
원하는 결과는 백분율이어야합니다.
이것은 내가 가진 것입니다 (물론 많은 오류가 발생합니다).
SELECT ROUND(percentage_partial_sale, 1) as "percentage_partial"
FROM (
SELECT count_partial_sale / count_all_sales as percentage_partial_sale
FROM (
SELECT COUNT(sale_id) FROM sale WHERE sale.is_partial=true as "count_partial_sale",
COUNT(sale_id) FROM sale as "total_sellouts");
평신도의 용어로 해결책을 표현할 수 있다면 도움이 될 것입니다. 원하는대로 자유롭게 변경하십시오.
도움을 주셔서 감사합니다.
CASE WHEN
조건부 계산에 사용 :
select
count(*) as all_sales,
count(case when is_partial then 1 end) as partial_sales,
count(case when is_partial then 1 end)::decimal / count(*)::decimal * 100.0 as ratio
from sale;
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다