반응형
Article
https://yozm.wishket.com/magazine/detail/1519/
주제
SQL의 가독성을 높이는 습관과 중요한 점
🥑 핵심 요약
- 예약어, 함수 등은 대문자로 작성한다.
- 행갈이를 자주 한다.
- 주석을 쓴다.
- Alias를 잘 쓴다.
- 가장 중요한 것은
합의된 규칙
이다.
1. 예약어, 함수 등은 대문자로 작성한다.
누가 봐도 이해할 수 있게끔 SELECT
, FROM
,AS
등 예약어와 함수는 대문자로 작성하여 가독성을 높인다.
2. 행갈이를 자주 한다.
3. 주석을 쓴다.
어떤 로직을 제외했다가 다시 포함해야 하는 일이 생길 수 있으므로, 행갈이를 자주하여 어떤 것이 문제인지 쉽게 파악하고 빠르게 해결할 수 있도록 한다.
코드의 의도를 짧게 적어두는 습관은 길고 복잡한 쿼리를 쉽게 이해할 수 있도록 도와준다.
작성자의 의도와 코드 구조를 쉽게 파악할 수 있게 작성한다.
SELECT AVG(sales) avg_sales
FROM (
-- 요일별 매출액 합계 계산
SELECT day -- 일별 X 요일별 O
, SUM(total_bill) sales
FROM tips
WHERE sex = 'Female' -- 결제자의 성별이 여성인 경우
GROUP BY day
) daily_sales
❓ 주석 쓰는 Tip
- 서브쿼리 단위로 의미 작성
- 해석에 오해가 있을 수 있거나, 추가 설명이 필요한 경우 작성
- `CASE`, `IF`, `WHERE` 등 조건이 필요한 경우의 이유와 어떻게 동작하는지 작성
4. Alias를 잘 쓴다.
서브쿼리, 컬럼의 별명을 대충 적지 말고, 다시 볼 일이 생겼을 때 바로 파악할 수 있도록 직관적으로 작성한다.
5. 가장 중요한 것은 합의된 규칙 이다.
내가 일하는 사람들과의 합의된 규칙에 따라 작성하는 것이 우선이다.
나 말고 누군가가 볼 것이라는 생각으로 작성하고 정리하는 것이 중요하다.
인사이트
SQL을 배우고 점점 복잡한 쿼리들을 작성하면서 해당 아티클에서 알려주는 ‘가독성’에 대해 고민한 적이 많았기 때문에 앞으로 쿼리문을 작성 할 때 많은 도움이 될 것이라 생각한다. 특히 로직에서 제외했다가 다시 포함시키는 경우, 혹은 그 반대의 경우의 상황을 많이 겪었는데 그 때마다 다시 쿼리문을 작성하여 확인했다. 다시 쿼리문을 작성하는 것은 시간도 많이 들고 비교해서 보기에도 불편했는데 위 내용을 참고해서 더 길고 복잡한 쿼리도 더 효율적으로 작성하고, 누구나 잘 알아볼 수 있도록 작성해야겠다는 생각이 들었다.
반응형
'Data' 카테고리의 다른 글
[아티클스터디] 데이터 분석가에게 코딩 테스트가 필요할까? (10) | 2024.09.29 |
---|---|
[아티클스터디] SQL 질문 잘 하는 방법 핵심 요약 (3) | 2024.09.28 |
[Mysql] SQL 문법연습 / HAVING절 (2) | 2024.09.16 |
[아티클스터디] 데이터 리터리시& 잘못된 데이터 해석 (4) | 2024.09.12 |
[Mysql] SQL 문법연습 풀이 및 해석 (0) | 2024.09.12 |