코딩테스트 80

[프로그래머스] [SQL] 없어진 기록 찾기

거의 일주일만에 돌아온 코테 SQL 집중 기간이라 SQL로 돌아옴 나간 기록은 있는데 들어온 기록이 없다 => outs에 ins를 붙여야겠다는 생각이 먼저 들었다 left join을 썼다 => outs에 있고 ins에 없는걸 null로 합쳐질 수 있도록! 그리고 is null인걸로 걸러내기 완성 SELECT ANIMAL_OUTS.ANIMAL_ID, ANIMAL_OUTS.NAME FROM ANIMAL_OUTS LEFT JOIN ANIMAL_INS ON ANIMAL_OUTS.ANIMAL_ID = ANIMAL_INS.ANIMAL_ID WHERE ANIMAL_INS.ANIMAL_ID is null; 당연히 join으로 하면 두 테이블 모두에서 있는 것만 합쳐지기 때문에 성립되지 않는다 그렇다면 right joi..

코딩테스트 2023.10.24

[프로그래머스] [Python] 수 조작하기 1

다시 파이썬 레~~쓰고 뭔가 COS Pro 시험 보고 나니 각성한 거 같다 남이 푼 코드를 많이 보라고 하는 건 이런 이유인가 처음 푼 거 헤헤 잘풀었다하고 돌리니 결과랑 다르게 나와서 결과 볼려고 print문 돌렸다 def solution(n, control): for i in range(len(control)): if 'w' in control[i]: n =+ 1 elif 's' in control[i]: n =-1 elif 'd' in control[i]: n =+ 10 else: n =- 10 return n print문 보니 n에서 왔다갔다 하고 있어서 문제에서 원하는 결과랑 내가 출력한 결과랑 다른 거였음 def solution(n, control): for i in range(len(cont..

코딩테스트 2023.10.17

[프로그래머스] [SQL] 조건에 부합하는 중고거래 상태 조회하기

이게 나를 애먹인 문제 CASE~WHEN 절을 처음 써봐서 그런 것도 있고 몰라서 Bard한테 물어봤는데 자꾸 이상하게 답해서 더 헤맸다 Bard 이 좌식 ~~! 난 처음 풀어봐서 코드가 좀 복잡한데 고수님들 답 찾아보니 낫다 그래도 우선 내가 푼 논리구조 기록하기 거래상태가 SALE 이면 판매중, RESERVED이면 예약중, DONE이면 거래완료 분류하여 출력 이 부분을 해결하는 함수를 찾는데 시간이 좀 들었다 CASE~WHEN은 사용해 본 적이 없어서 바로 머리 속에서 안나왔음 😂 어찌저찌 찾았는데 처음에는 CASE WHEN ~ THEN CASE WHEN ~ THEN 이렇게 적고 ㅋㅋㅋㅋㅋ 자꾸 오류나서 Bard한테 물어보니 컴마를 찍으라고... 해결은 안됐다 스트레스트만 받음 다른게 문제가 아니고 ..

코딩테스트 2023.10.13

[프로그래머스] [SQL] DATETIME에서 DATE로 형 변환

다른거 풀다가 도저히 안풀려서 다른 문제 찾기 어제오늘은 계속 STRING, DATE 요 부분만 하는 거 같네 DATE_FORMAT을 오랜만에 쓰다보니 순서가 헷갈렸다 DATE_FORMAT(컬럼명, '형식') 기억하기 !! SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%m-%d') '날짜' FROM ANIMAL_INS ORDER BY ANIMAL_ID ASC; 그거말고는 쉽다 풀던거 마저 풀러가야지.... 출처 : 프로그래머스

코딩테스트 2023.10.13

[프로그래머스] [SQL] 특정 옵션이 포함된 자동차 리스트 구하기

오늘의 2번째 SQL 서브쿼리를 쓰려다보니 지나치게 복잡하게 생각해버렸다 그냥 평소처럼 하면 되는데.... SELECT CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS FROM ( SELECT CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%네비게이션%' ) A ORDER BY CAR_ID DESC; FROM절에 쓰는 서브쿼리는 이제 이해했다 FROM에서 걸러서 테이블을 하나만들고 그걸 테이블로 해서 원하는 데이터 뽑아내기 ! (내가 이해한 바로는 SELECT절이나 WHERE절에서는 1개만 나와야 함) 그리고 FROM 서브쿼리 끝나고 나면 꼭 이름 하나 붙여주기 ! 그 외에 복잡하게..

코딩테스트 2023.10.12

[프로그래머스] [SQL] 고양이와 개는 몇 마리 있을까

목표 : 토요일까지 SQL 하루에 2문제씩 풀기 내 마음의 안식처 컴백~ 이건 딱히 설명할 건 없고 "고양이보다 개를 먼저 조회해주세요" 라길래 한글로 나올 줄 알았는데 영어로 나온 거만 빼면 아주 수월했다 SELECT ANIMAL_TYPE, count(ANIMAL_TYPE) "count" FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE ASC; 출처 : 프로그래머스

코딩테스트 2023.10.12

[프로그래머스] [COS Pro] 2급 Python 모의고사

각 파트에서 못 푼 것만 리뷰 빈칸 채우기 문제 안내 빈칸 채우기는 이미 완성된 코드 중 빈칸에 알맞은 코드를 입력하는 문제 타입입니다. 빈칸을 제외한 기본 코드는 수정할 수 없습니다. 빈칸을 채우지 않을 경우, 실행 결과에 에러 메시지가 표시됩니다. 1. 공항 방문객 def func_a(arr, n): ret = [] for x in arr: if x != n: ret.append(x) return ret def func_b(a, b): if a >= b: return a - b else: return b - a def func_c(arr): ret = -1 for x in arr: if ret < x: ret = x return ret 이렇게 함수가 주어지고 빈자리를 채우면 된다 def solutio..

코딩테스트 2023.10.11

[프로그래머스] [Python] 자연수 뒤집어 배열로 만들기

정처기 내일인데 어쩌냐... 여튼 오늘도 파이썬 이제 마냥 고민하기에 내가 아는게 없다는 걸 받아들여서 로직만 고민하고 구글링해가면서 푼다 뒤집는다 ! reversed 아님 [::-1]인데 구글링하자마자 나온건 reversed 하지만 [::-1]로 짰다 이유는 나도 몰라 다시 map을 원활하게 쓸려고 노력중이다 구글링하면서 하니까 내가 어디서 막히는지 알수 있어서 좋다 map에 int와 리스트를 넣으면 리스트의 모든 요소를 int를 사용해서 변환합니다. 그다음에 list를 사용해서 map의 결과를 다시 리스트로 만들어줍니다. [출처 : 코딩도장] def solution(n): return list(map(int, str(n)[::-1])) 여기서 부턴 다른 사람 코드 이사람은 reversed를 썼다 de..

코딩테스트 2023.10.06

[프로그래머스] [Python] 서울에서 김서방 찾기

이틀 만에 돌아온 코테 자고 노느라 바빴다... (반성 중) 이 문제는 보자마자 f스트링이 생각나서 찾아가면서 했다 f스트링 해결하고 나니까 인덱스가 기억이 안나서 또 찾고 ㅎㅎ 이런 기본적인거는 좀 외워야하는데 파이썬 한번 제대로 다시 공부해야겠다 def solution(seoul): return f'김서방은 {seoul.index("Kim")}에 있다' 이건 다른 사람의 답변 f스트링이 나오기 전의 방법인거 같다 def findKim(seoul): return "김서방은 {}에 있다".format(seoul.index('Kim')) 오늘도 무사히 하나 풀고(실은 어제꺼..ㅎㅎ) 내일을 향해 파이팅 출처 : 프로그래머스

코딩테스트 2023.10.06

[프로그래머스] [SQL] 진료과별 총 예약 횟수 출력하기

DBA 넣고 코테를 SQL로 본대서 본격 서브쿼리 공부하기 시작 서브쿼리로 최대한 풀어보려 했는데 너무 예전에 배웠어서 기억이 희미... 구글링해도 잘 이해가 안돼서 전략을 바꿨다 우선 내가 풀기 → GPT에게 물어보기 난 Bard를 쓰긴 했지만 비교해가며 공부하려고 ㅎ 우선 이게 내가 푼 SQL 실은 서브쿼리 만든다고 정신없어서 어떻게 풀었는지도 모르겠다 맞아서 오히려 어리둥절했음 이제 뜯어보자 ^^ SELECT 컬럼명은 '진료과 코드', '5월예약건수' FROM APPOINTMENT 테이블 WHERE 2022년 5월에 예약 GROUP BY 진료과코드 별로 조회 ORDER BY 진료과별 예약한 환자 수를 기준으로 오름차순 , 진료과 코드를 기준으로 오름차순 정렬 SELECT MCDP_CD as "진료과..

코딩테스트 2023.10.02