sql 103

14. Weather Observation Station 9

아까 글을 하나 올렸는데 문제를 풀자마자 올리는 것이 아니라 며칠 지나서 올리니깐 기억도 새록새록 나고 다른 재미가 있다. 다음문제는 어떤 문제였는지 보자 모음으로 시작하지 않는 것을 출력하는 것이다. 중복도 없어야하는데 항상 같은 문제로 익숙해졌으니 자연스럽게 DISTINCT를 쓰자 그런데 내가 제출한걸 보니 DISTINCT를 안써서 틀렸었네... 허허... 다음은 깜빡하지말고 써보자 바로 다음엔 맞췄어서 다행이구만... 쿼리에 대해서 설명하고 가자 SUBSTR의 내용은 city의 첫번째 글자에서 1개만 추출하는 함수이다. 그래서 그게 모음이 아닌지(NOT IN) 확인하게 된다. 그런데 city가 대문자일 수도 있으니(실제로 대문자임) LOWER로 소문자 변환을 해주면 된다.

13. Weather Observation Station 8

요즘 문제를 많이 풀었는데 올리지는 못했다.. 풀었던 문제들을 정리하고 책에 대해 공부하겠다. 사실은 막혀서 더 못품 ㅋㅋ 아무튼 문제를 하나씩 풀어보자 첫글자, 마지막글자가 모음으로 되어있는 것을 출력해야한다. 지난번에는 조금 조잡하게 답을 작성했다. 그 문제를 풀고 다른 사람의 풀이를 살짝 보았는데 너무 멋있는 답을 봐서 그걸 응용해서 이 문제를 풀어보았다. 바로 SUBSTR로 첫글자와 마지막 글자가 모음인지 탐색하는 것이다. LOWER로 소문자 변형을 하는 것도 꼭 챙기자 하드코딩도 못푸는것보단 낫지만 멋있는 코드를 작성하는 것을 보면 나도 저렇게 멋있는 코드를 스스로 작성을 하고싶은 마음이 너무 커진다. 그렇게 하기위해선 공부와 익숙함이 필요하겠지??? 뒤에 나오는 위와 같은 유형의 문제 모두 S..

11. Weather Observation Staion 6

Success rate 98.41 하나는 맞춰야하니깐 다음 문제를 풀어보자 모음으로 시작되는 단어를 뽑는 것이다. 지난번에 %, like로 뽑는 것을 배웠으니 활용해보자 다음과 같이 정답 쿼리를 작성했다. 그런데 3번째 줄이 모든 모음을 다 나열해서 작성되었다. 처음에는 깔끔하게 코드를 쓰기위해 in을 썼는데 잘 안되서 결국 or로 여러개를 묶어서 만들게 되었다. order by를 쓰면 알파벳 순서대로 나열하여 정답과 똑같이 만들 수 있으니 참고하자 (안써도 정답처리는 된다)

10. Weather Observation Staion 5

요약 1. 문제가 너무 어렵다. 2. 찾아봐도 잘 안된다. 3. 더 배우고 더 해보자. ---------------------------------------------------------------------------------------------- 먼저 결과부터 보면 2일동안해보았는데 잘 안된다. 실패한 경험을 말하고 문제를 풀게된다면 이어서 작성하겠다. ----------------------------------------------------------------------------------------------- 문제 풀이 문제는 간단하다. city 명이 가장 긴거 1개, 가장 짧은거 1개를 업로드 하는 것이다. 두개 이상의 쿼리를 작성해도 된다고 하니 두개의 쿼리를 만들어서 해보려고..

19-1 특정 문자열 추출하기(도메인 추출)

요약 1. INSTR로 문자열을 뽑아낼 수 있다. 사실은 오늘은 코딩테스트를 풀려고 했다. 그런데 문제가 어려워서 공부하는 것으로 바꿨다. 그래서 오늘은 이메일에서 도메인 주소를 출력하는 것을 실행해보자 먼저 @의 위치를 출력해보자 다음과 같은 코드로 naver.com을 출력할 수 있다. 22번 예제에서 RTRIM 함수를 배우면 naver만 출력할 수 있다고하니 그때 더 심화해서 공부해보자

코딩/SQL 2022.05.16

19. 문자에서 특정 철자 위치 출력하기(INSTR)

요약 1. 문자에서 특정 철자의 위치를 알기위해선 INSTR을 사용한다. 2. 정확히 일치하는 것만 출력한다. 3. 다음번엔 문자를 잘라서 출력하는 걸 해보자 문자열에서 내가 원하는 것이 어디있는지 찾는 것은 INSTR을 사용한다. 예제는 이름중 E가 어디있는지 출력하는 것이다. 따옴표에 들어있는 것이 정확히 일치해야한다. 소문자 e는 찾지 못한다. 두글자 이상의 문자열도 탐색이 물론 가능하며 처음시작되는 곳의 위치가 출력된다. 원래 현재과에 메일 주소 중 도메인 주소를 출력하는 것이 있는데 분량이 상당해서 다음과에 작성한다.

코딩/SQL 2022.05.15

9. Weather Observation Station 4

Success Rate : 98.7% 이번 코딩 테스트 문제는 데이터의 개수를 세는 문제이다. 아직 데이터의 개수을 세는 과정은 배우지않아서 책에서 살짝 보고 작성하였다. 책은 40. 건수 출력하기(COUNT) 이며 R과 동일하게 COUNT를 쓰면 개수를 출력할 수 있다. 우선은 잘못된 코드인데 두 도시간 개수를 각각 출력하는 코드이다. 중복이 없을때는 499개, 중복을 제외하면 486개의 데이터가 있다. 두개의 차이는 문제에도 나와있지만 " - "를 사용하면 간단하게 나온다. 아래와 같이 두개의 결과값을 빼주면 원하는 차이인 13이 출력된다. 책을 보고 작성하면 간단하게 풀 수 있지만 내가 배우고 기억해서 푸는 것과 차이는 있어보인다. 앞으로는 문제 푸는 것도 좋지만 내 기본 실력도 키우면서 해보자

8. Weather Observation Station 3

이제부터는 난이도를 파악하기 위해 Rate를 제시한다. 높을 수록 쉬워서 정답을 잘 맞춘다고 생각하면 된다. 이번문제의 Rate는 Rate 97.82(정답율) 문제이다. 지금은 답을 다 풀고 올리는 것이지만 내가 풀었던 문제 중 가장 어려웠다. 중복, 짝수 탐색 등을 알아야 이 문제를 풀 수 있었다. 문제는 다음과 같다. STATATION의 데이터셋에서 ID가 짝수인 도시의 NAME을 출력하라는 코드이다. 그러나 중복되는 데이터가 출력되면 안된다! 나는 처음에 짝수의 ID를 출력하는 것에 집중했다. SELECT city FROM station WHERE id/2=0; 위와 같이 코드를 작성했는데 안되었다. 그래서 SQL 책을 좀 봤다. 거기서 MOD로 홀수 짝수를 구분하는 것이 있어 그대로 가져왔다. S..