오늘 모의고사를 만들어 ide없이 풀어 보았습니다. 오늘은 문제들을 푸는 과정에서 느낀 팁들을 공유하려고 합니다.
sql 문제들을 풀면서 나오는 팁
distinct : sql문 중복 제거
ifnull : (p1, p2) 구조로 칼럼 p1의 값이 Null 일 경우 p2의 값을 넣어줍니다.
group by : 특정 대아터 기준으로 그룹을 나눌 수 있습니다. 나누고자 하는 것들은 항상 select에도 반영이 되야합니다.
having : group by와 함께 사용됩니다. 집계된 것들을 가지고 조건을 비교 할때 사용됩니다.
in : 칼럼 in (str1, str2) 형식으로 한번에 확인 할 때 확인합닌다.
if : (조건, 참, 거짓) 형식으로 사용됩니다. 만약 조건이 만족된다면 참 값을 데이터에 넣습니다.
날짜 관련 :
date_format(time, "%Y-%m-d") 형식으로 사용됩니다.
year(time), month(time), day(time), monthname(time) - 문자열 월 이름을 반영합니다., dayofyear(time) - 1년에서 몇일이 지났는지를 나타내 줍니다., date_add(time, INTERVAL 1 MINUTE) - second, hour, day, month, year 모두 가능합니다, date_sub() - date_add와 같지만 날짜를 빼 줍니다.
datediff(time1, time2) - 두 시간 간의 차이를 나타냅니다.
알고리즘 문제를 시간안에 풀었습니다. 다만 하나의 문제를 효율성을 통과를 하지 못했는데 좀 억울합니다 ㅠㅠ
사실 개념이랑 풀이 방법은 다 똑같은데 재귀형식으로 짜다보니 파이썬에서 시간초과가 나는 것 같습니다.
프로그래머스가 유독 재귀에 얄짤 없습니다... 그래서 이 재귀로 dp푼 것을 다시 반복문으로 바꾸는 연습을 했습니다.