https://leetcode.com/problems/invalid-tweets/description/?envType=study-plan-v2&envId=top-sql-50
코드설명
CHAR_LENGTH + LENGTH 를 활용합니다.
간단하게 CONTENT 변수의 LENGTH 중 15보다 큰 것의 레코드를 출력하면 됩니다.
이 경우, 유의해야할점은, LENGTH 함수가 CONTENT 함수를 가공해서 인덱스는 사용할 수 없다는 것 입니다.
또한, 문제의 DISCUSSION을 통해 확인해보니, LENGTH() 함수 대신 CHAR_LENGTH()가 더 정확하다고 말하고 있습니다.
이유는 LENGTH()는 문자의 개수(글자 수) 가 아닌, 바이트 수를 반환하기에 부정확합니다.
문자의 개수를 알고싶다면 CHAR_LENGTH()를 사용해야 합니다.
MYSQL 코드
SELECT TWEET_ID
FROM TWEETS
WHERE CHAR_LENGTH(CONTENT) > 15;