[사전캠프] SQL 연습문제 - 5
2024. 8. 20. 20:01ㆍ내일배움캠프
문제 : 아래의 테이블을 참고해 문제 해결을 위한 SQL 문을 작성하자.
id | name | start_date | end_date | aws_cost |
1 | 일조 | 2023-01-01 | 2023-01-07 | 30000 |
2 | 꿈꾸는이조 | 2023-03-15 | 2023-03-22 | 50000 |
3 | 보람삼조 | 2023-11-20 | 2023-11-30 | 80000 |
4 | 사조참치 | 2022-07-01 | 2022-07-30 | 75000 |
[team_projects(프로젝트) 테이블]
Q1. AWS 예산(aws_cost)이 40000 이상 들어간 프로젝트들의 이름을 선택하는 쿼리 작성
SELECT name
FROM team_projects
WHERE aws_cost >= 40000
'team_projects' 테이블에서 'aws_cost' 가 40000 이상인 레코드들에서 'name' 컬럼을 조회환 결과를 출력하는 쿼리를 작성하였다.
Q2. 테이블에서 2022년에 시작된 프로젝트를 선택하는 쿼리를 작성, 단 'start_date < 2023-01-01' 조건을 사용하지 않을 것!
SELECT *
FROM team_projects
WHERE start_date LIKE '%2022-%'
조건에 비교연사자를 통한 조건식을 사용하지 않길 원하고 있어 LIKE 를 사용해 'start_date' 컬럼에서 '2022-' 문자를 포함하고 있는 값을 가진 레코드를 선택해 조회할 수 있는 쿼리를 작성하였다.
Q3. 현재 진행중인 프로젝트를 선택하는 쿼리를 작성, 단 현재 시점의 날짜를 하드코딩해서 쿼리하지 말것!
SELECT *
FROM team_projects
WHERE end_date > NOW()
제대로 문제를 이해했는지 모르겠지만 날짜 하드코딩(?)은 아마 CONCAT 등을 사용해 현재 날짜를 직접 입력하는 것을 말하는 것 같아 나의 경우 'NOW' 와 비교연산자를 사용하였다. 'end_date' 자체는 DATE 를 다루니 'CURRENT_DATE' 를 사용해도 될 것 같다.
Q4. 각 프로젝트의 지속 기간을 일 수로 계산하는 쿼리 작성
SELECT id, name, DATEDIFF(end_date, start_date) '진행기간'
FROM team_projects
DATEDIFF 를 사용해 날짜의 차이 일수를 연산하여 '진행기간' 이란 컬럼에 값을 출력하는 쿼리를 작성했다.
'내일배움캠프' 카테고리의 다른 글
[사전캠프] SQL 연습문제 - 6 (0) | 2024.08.22 |
---|---|
[사전캠프] TIL 작성 - 24.08.21(수) (0) | 2024.08.21 |
[사전캠프] TIL 작성 - 24.08.20(화) (0) | 2024.08.20 |
[사전캠프] TIL 작성 - 24.08.19(월) (0) | 2024.08.19 |
[사전캠프] 이용자의 포인트 조회하기 (0) | 2024.08.19 |