MySQL에서 CHARACTER_LENGTH() 함수는 문자열의 길이를 문자 단위로 반환합니다.
CHARACTER_LENGTH()는 CHAR_LENGTH() 함수와 동의어입니다.
구문은 다음과 같습니다.
CHARACTER_LENGTH(str)
여기서 str은 길이를 반환하는 문자열입니다.
예제 1 - 기본 사용법
다음은 기본 사용법의 예입니다:
SELECT CHARACTER_LENGTH('Cat');
결과는 다음과 같습니다:
+-------------------------+ | CHARACTER_LENGTH('Cat') | +-------------------------+ | 3 | +-------------------------+
예제 2 - 끝에 공백이 있습니다
CHARACTER_LENGTH()는 다음과 같습니다. 계산에 포함됩니다. 후행 공백(예: 문자열 끝에 있는 공백).
따라서 이전 예의 끝에 공백을 추가하면:
SELECT CHARACTER_LENGTH('Cat ');
결과:
+--------------------------+ | CHARACTER_LENGTH('Cat ') | +--------------------------+ | 4 | +--------------------------+
하지만 TRIM() 함수 또는 RTRIM() 함수를 사용하여 다음 공백을 제거할 수 있습니다.
SELECT CHARACTER_LENGTH(TRIM('Cat ')) AS 'TRIM', CHARACTER_LENGTH(RTRIM('Cat ')) AS 'RTRIM';
결과:
+------+-------+ | TRIM | RTRIM | +------+-------+ | 3 | 3 | +------+-------+
예 3 - 선행 공백
선행 공백에도 동일한 개념이 적용됩니다. TRIM 또는 LTRIM을 사용할 수 있습니다:
SELECT CHARACTER_LENGTH(TRIM(' Cat')) AS 'TRIM', CHARACTER_LENGTH(LTRIM(' Cat')) AS 'LTRIM';
Result:
+------+-------+ | TRIM | LTRIM | +------+-------+ | 3 | 3 | +------+-------+
예제 4 - 데이터 유형
문자열이 어떤 데이터 유형에 저장되어 있든 상관없이 동일한 결과를 반환합니다. 이는 데이터가 유니코드 문자열로 저장된 경우 문자 수를 두 배로 반환하는 LENGTH() 함수와 대조됩니다.
아래 예에서 ArtistName 열은 varchar(255)를 사용합니다.
SELECT CHARACTER_LENGTH(ArtistName) Result FROM Artists WHERE ArtistName = 'Lit';
결과:
+--------+ | Result | +--------+ | 3 | +--------+
유니코드를 사용하도록 ArtistName 열을 수정하면:
ALTER TABLE Artists MODIFY COLUMN ArtistName VARCHAR(255) unicode;
동일한 쿼리를 다시 실행하면:
SELECT CHARACTER_LENGTH(ArtistName) FROM Artists WHERE ArtistName = 'Lit';
여전히 동일한 결과를 얻습니다:
+--------+ | Result | +--------+ | 3 | +--------+
그러나 LENGTH() 함수를 사용하면 결과는 6이 됩니다. 이는 유니코드 문자열이 문자당 2바이트를 저장하고 LENGTH() 함수가 바이트 단위로 측정된 길이를 반환하기 때문입니다.
관련 추천: "mysql 튜토리얼"
위 내용은 MySQL의 CHARACTER_LENGTH() 함수 사용법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!