KATA는 기술과 기술 향상에 초점을 맞춘 코드 챌린지입니다.
일부는 프로그래밍 기본 사항을 교육하는 반면 다른 일부는 복잡한 문제 해결에 중점을 둡니다.
이 용어는 The Pragmatic Programmer 라는 책의 공동 저자인 Dave Thomas 가
무술에서 일본의 카타 개념을 인정하면서 처음 만들어졌습니다.
Dave의 개념 버전은 코드 카타를 프로그래머가
연습과 반복을 통해 기술을 연마하는 데 도움이 되는 프로그래밍 연습으로 정의합니다.
✔️ 제출 쿼리
✔️ 쿼리 분석
#CDEs 사용! 임시 테이블 생성 후 원래 테이블과 조인하는 방법에 대해 신경쓰기!
WITH MAXPRICE AS (
SELECT CATEGORY,
MAX(PRICE) MP
FROM FOOD_PRODUCT
GROUP BY CATEGORY
)
SELECT FP.CATEGORY,
FP.PRICE MAX_PRICE,
FP.PRODUCT_NAME
FROM FOOD_PRODUCT FP JOIN MAXPRICE MX
ON FP.CATEGORY = MX.CATEGORY
AND FP.PRICE = MX.MP
WHERE FP.CATEGORY IN('과자','국','김치','식용유')
ORDER BY FP.PRICE DESC
✔️ 제출 쿼리
✔️ 쿼리 분석
SELECT FP.PRODUCT_ID,
FP.PRODUCT_NAME,
SUM(FP.PRICE*FO.AMOUNT) TOTAL_SALES --- (총매출은 가격 * 수량)
FROM FOOD_PRODUCT FP JOIN FOOD_ORDER FO
ON FP.PRODUCT_ID = FO.PRODUCT_ID
WHERE FO.PRODUCE_DATE LIKE '2022-05%'
GROUP BY FP.PRODUCT_ID
ORDER BY 3 DESC, 1
✔️ 제출 쿼리
✔️ 쿼리 분석
SELECT O.ANIMAL_ID,
O.NAME
FROM ANIMAL_OUTS O LEFT JOIN ANIMAL_INS I
ON O.ANIMAL_ID = I.ANIMAL_ID
WHERE I.ANIMAL_ID IS NULL
ORDER BY 1
✔️ 제출 코드
✔️ 코드 분석
def solution(num):
if (num%2 == 0):
answer = 'Even'
else: answer = 'Odd'
return answer
✔️ 제출 코드
✔️ 코드 분석
def solution(arr):
answer = sum(arr) / len(arr)
return answer
✔️ 제출 코드
✔️ 코드 분석
def solution(n): --- (solution 함수 정의, 변수 n)
word = str(n) --- (n을 문자열로 반환해 word라는 변수에 저장)
add = 0 --- (add라는 변수 생성, 0으로 초기화)
for i in range(len(word)): --- (for 반복문, word의 길이만큼 반복,
i는 0부터 word의 길이보다 하나 작은 숫자까지 변화)
add += int(word[i]) --- (word의 i번째 문자를 정수로 변환, add에 더하기)
return add --- (add 변수 값 반환, n의 각 자릿수를 더한 총합)