[Other skills]

가독성을 챙기기 위한 SQL 스타일 가이드

indongspace 2024. 5. 11. 21:08

 

1. 예약어는 대문자로 작성

 


SQL 에서 문법적인 용도로 사용하고 있는 문자들은 대문자로 작성

예약어의 대표적인 예시 : SELECT, FROM, WHERE, 각종 함수

SELECT
 col
FROM table
WHERE

 

 

 

2. 컬럼 이름은 snake_case 로 작성


컬럼 이름은 CamelCase가 아닌 snake_case로 작성

(단, 회사의 기준이 CamelCase면 사용. 일관성이 중요)

SELECT
 col1 AS event_status
FROM table

 

 

 

3. 명시적 vs 암시적인 이름


Alias로 별칭을 지을 때는 명시적인 이름을 적용

AS a, AS b 등 컬럼의 의미를 한 번 더 생각하게 하는 이름이 아닌 명시적인 것을 사용

JOIN 할 때 테이블의 이름도 명시적으로 할 수 있다면 명시적으로 진행하기

AS를 생략해서 별칭을 설정할 수도 있는데, AS를 쓰는 것도 명시적인 표현

 

 

 

4. 왼쪽 정렬


기본적으로 왼쪽 정렬을 기준으로 작성

# Good!
SELECT
 col
FROM table
WHERE 1=1
# Not Good
SELECT col
 FROM table
WHERE 1=1

 

 

 

5. 예약어나 컬럼은 한 줄에 하나씩 권장


컬럼은 바로 주석처리 할 수 있는 장점이 있기에 한 줄에 하나씩 작성

# Good!
SELECT
 col1,
 col2,
 col3,
FROM table
WHERE
# Not Good
SELECT col1,col2,col3
FROM table

 

 

 

6. 쉼표는 컬럼 바로 뒤에


의견이 갈리는 부분. (쉼표 앞 vs 뒤)

BigQuery는 마지막 쉼표를 무시해서 뒤에 작성해도 무방

SELECT
 col1,
 col2,
 col3, # BigQuery는 정상 동작
FROM table
SELECT
 col1
 ,col2
 ,col3
FROM table