inflearn logo
강의

講義

知識共有

SQLコーディングテストの第一歩

グループ化 (group by)

[The Latest Login in 2020] datetime 계산 관련

解決済みの質問

265

minn4072

投稿した質問数 2

1

select user_id, max(time_stamp) as last_stamp
from Logins
where year(time_stamp) = 2020
group by user_id

date typetime_stamp 컬럼을 2020년만 필터링 하기 위해서 year() 함수를 사용했습니다.

[ 궁금한 사항 ]

sql mysql 코딩-테스트

回答 1

0

Gemma

종훈님 안녕하세요:)

 

네~ 코딩테스트 문제로 나와도 통과가 될 올바른 풀이입니다. 다만, RDBMS에서 권장하는 방식은 아닌데요.

보통 검색 조건(=where조건)에 함수(예: year)를 씌우면 속도가 느려져서 권장하지 않습니다.

time_stamp의 인덱스를 활용하지 못하고, full scan으로 검색하기 때문입니다.

 

혹시 위 내용이 이해가 안갔더라도, 걱정하지 마시고 편하게 읽고 넘어가셔도 됩니다.

코딩 테스트에서는 종훈님께서 작성하신 쿼리를 써도 문제 없습니다!

 

종훈님의 쿼리도 해당 SQL 파일에 업데이트 하였습니다.

질문 감사합니다. :)



(참고) https://www.percona.com/blog/mysql-8-0-functional-indexes/ 

imageimage

관리자 페이지 질문

0

7

1

코딩살구클럽 승인

0

4

1

코딩살구클럽승인

0

7

1

vercel실행 - failed to fetch

0

11

1

드랍 테이블로 지운 ordes에 대해서 질문

0

23

1

코딩살구클럽 승인

0

36

2

문제 풀이 1번 질문

0

28

1

3-D 관련 질문

0

31

2

SQL 기본 문법

0

45

2

2강에 파일 어디있을까여,,

0

44

2

문제 링크 변경

0

83

2

SQL 파일 다운로드

0

86

2

workbench 테이블 생성

0

300

2

sql 코딩 테스트에서 index 생성 가능 여부

1

307

2

cross join, full join강의 / leetcode 1280번 문제 질문드립니다

1

314

1

not In강의 / leetcode 1978 질문 드립니다

2

217

1

LEETCODE - Sales Analysis 3 코드 질문드립니다.

1

291

1

[Average Selling Price] 문제 테스트케이스 실패

1

298

3

서브쿼리 질문

1

363

1

EASY INNER JOIN 관련 average-selling-price 연습문제

1

289

1

INNER JOIN 강의 질문

1

342

2

문제 주소 링크

1

310

2

work bench 설치관련 문의

1

290

2

깃헙 데스크탑, MYSQL 워크벤치 연동

2

877

3