SQL

[leetCode] #1683 (length와 char_length의 차이)

빛날희- 2023. 7. 31. 23:30

문제 - Invalid Tweets

https://leetcode.com/problems/invalid-tweets/

 

Invalid Tweets - LeetCode

Can you solve this real interview question? Invalid Tweets - Table: Tweets +----------------+---------+ | Column Name | Type | +----------------+---------+ | tweet_id | int | | content | varchar | +----------------+---------+ In SQL, tweet_id is the primar

leetcode.com

Find the IDs of the invalid tweets. The tweet is invalid if the number of characters used in the content of the tweet is strictly greater than 15.

 

작성 답안

select tweet_id
from tweets
where length(content) > 15

 

리뷰

해당 문제에서는 length()로 테스트케이스를 패스할 수 있었지만, 엄연히 말하면 char_length()를 사용해야한다.

문제에서 바이트 길이가 아닌 문자 길이를 조건으로 두었기 때문이다.

 

LENGTH(string)

string의 바이트 길이를 반환한다.

- 일반적으로 영어를 포함한 서구권 언어는 각 문자가 1바이트를 사용한다.

- 한국어, 일본어와 같은 아시아권 언어는 최대 2바이트를 사용한다.

- UTF-8과 같은 유니코드는 최대 3바이트까지 사용한다.

 

CHAR_LENGTH(string)

string의 문자열 길이를 반환한다.