1. 학습
  2. /
  3. 강의
  4. /
  5. Python으로 배우는 데이터베이스 입문

Connected

연습 문제

전체 여성 비율 계산하기

하나의 select 문 안에서 함수와 연산자를 함께 사용할 수도 있습니다. 이러한 조합은 백분율이나 평균을 계산할 때 매우 유용하며, case() 표현식을 사용하면 특정 조건을 만족하는 데이터에만 연산을 적용하면서 전체 쿼리에는 영향을 주지 않을 수 있습니다. case() 표현식은 일치시킬 조건들의 목록과, 조건이 일치할 경우 반환할 열을 받고, 어느 조건도 일치하지 않을 때 사용할 else_를 이어서 받습니다. 이 전체 표현식은 원하는 어떤 함수나 수학 연산으로 감쌀 수 있습니다.

정수 나눗셈을 할 때는 종종 결과를 부동 소수점으로 받고 싶을 때가 있습니다. 일부 데이터베이스는 이를 자동으로 처리하지만, cast() 함수를 사용해 표현식을 특정 타입으로 변환할 수 있습니다.

지침

100 XP
  • sqlalchemy에서 case, cast, 그리고 Float를 가져오세요.
  • 2000년의 여성 인구를 계산하기 위한 표현식 female_pop2000을 만드세요. 다음을 따르세요:
    • func.sum() 안에 case()를 사용합니다.
    • case()의 첫 번째 인수는 다음을 포함한 튜플의 리스트입니다.
      • i) census.columns.sex가 'F'와 같은지 확인하는 불리언.
      • ii) 열 census.columns.pop2000.
    • 두 번째 인수는 else_ 조건이며, 0으로 설정해야 합니다.
  • 2000년의 전체 인구를 계산하고 cast()로 Float로 변환하세요.
  • 2000년 여성 비율을 계산하는 쿼리를 만드세요. 이를 위해 female_pop2000을 total_pop2000으로 나눈 뒤 100을 곱하세요.
  • 쿼리를 실행하고 percent_female을 출력하세요.