알고리즘 챌린지

패스트캠퍼스 챌린지 39일차

JUN0126 2022. 3. 3. 23:50

예제를 통한 기본 조건 검색 및 정렬, 그룹제어

 

예제 1)

tEmployee 테이블은 직원들의 정보가 들어있는 테이블이다.

문구 생산부(DNumber : D1001)와 가구생산부(DNumber : D2001)의 직원 정보를 확인 하려한다.

위에 해당하는 직원들의 직원명과 입사일을 입사일이 빠른 순서대로 출력하라

입사일은 연,월,일 까지만 출력되어야 한다.

 

정답

 SELECT tem.EName AS 직원명, TO_CHAR(tem.StartDate,'YYYY-MM-DD') AS 입사일 // TO_CHAR 함수로 입사일 포매팅

 FROM tEmployee AS tem

 WHERE tem.DNumber IN('D1001','D2001') // DNumber가 D1001, D2001 인것만 조회

 ORDER BY tem.StartDate // 입사일 빠른 순서대로 정렬

 

 


예제 2)

tEmployee 테이블은 직원들의 정보가 들어있는 테이블이다.

2020년 크리스마스부터 입사일이 만 2년이 넘어가는 사람에게 보너스를 지급하려고 한다.

위 조건에 해당하는 직원의 직원명과 입사일을 출력하시오. (정렬은 고려하지 않음)

 

정답

 SELECT tem.EName AS 직원명, tem.StartDate AS 입사일 

 FROM tEmployee AS tem

 WHERE tem.StartDate < CAST('2020-12-25' as timestamp) - CAST('2 year' AS INTERVAL) // 만 2년 이상 대상자

 


예제 3)

 tProduction 테이블은 직원들 제품 생산 정보 테이블이다

 2020년 2월의 총생산량을 알려고한다.

 해당 월에 생상된 제품들의 코드와 해당 제품들의 총 생산량을 출력하시오

 

정답

 SELECT tpr.INumber AS 제품코드, SUM(tpr.PCount) AS 총_생산량

 FROM tProduction AS tpr

 WHERE tpr.PDate BETWEEN CAST('2020-02-01' as timestamp) and CAST('2020-03-01' as timestamp)

 GROUP BY tpr.INumber 

 


예제 4)

 tProduction 테이블은 직원들 제품 생산 정보 테이블이다

 2020년 1월에 생산량 500개 이상을 달성한 인원들의 직원번호와 총 생산량을 출력하시오

 

정답

 SELECT tpr.ENumber AS 직원번호, SUM(tpr.pCount) AS 총_생산량

 FROM tProduction AS tpr

 WHERE tpr.PDate BETWEEN CAST('2020-01-01' as timestamp) and CAST('2020-02-01' as timestamp)

 GROUP BY tpr.ENumber

 HAVING SUM(tpr.PCount) >= 500

 

 

 

39일차 인증

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr