파이썬을 처음배울때 "나중에 코드를 짤때 반드시 소프트 코딩을 해야한다!!
하드코딩하면 고생한다" 라는 말을 엄청 들었다. 물론 어느정도 공감했고 그럴려고 노력했다. 하지만 바로 데이터 분석을 들어가면서 당장의 분석에 집중하니 소프트 코딩과 하드코딩에 대한 생각이 나지 않았다.. 하지만!!!
요즘 회사에서 사수님의 쿼리를 씹고, 뜯고, 맛보고, 즐기며 깨달은것 sql도 소프트 코딩이 있다!!
쿼리문 set을 통해서 변수를 설정해주는 것이다.
예를 들어서 아래와 같은 쿼리문이 있다고 가정해보자.
# 서울에서 나의 회사 주소를 출력하시오
select address from seoul_city where my_office;
서울이라는 테이블에서 my_office라는 조건 내회사의 주소를 출력하는것이다.
하지만 회사가 지방에 있을수도 있고, 또한 회사가 아닌 집을 필요로 할때도 있을것이다.
이럴때 미리 set변수를 지정할 수 있다.
# 도시
set @city = seoul_city;
# 목적
set @purpose = my_office;
# 쿼리
select address from @city where @purpose;
위와 같이 city라는 변수와 purpose라는 변수를 미리만들어두면 언제든지 해당하는 값만 바꿔서 쉽게 사용할 수 있다. 지금은 간단한 쿼리라서 차이가 있는지 없는지 체감이 안될수도 있지만 쿼리가 복잡해질 수록 읽기쉽게 변수로 해서 유연하게 변경이 가능한 소프트 코딩을 하는것이 좋다.