2012-07-13 4 views
3

특정 열에 저장된 텍스트의 크기를 어떻게 알 수 있는지 알고 싶었습니다. 예 : 동일한 텍스트가 .txt 파일에 저장 되었다면 크기를 5kb 또는 10kb로 볼 수 있습니다. 내 열 데이터 형식이 longtext입니다.특정 열에 저장된 텍스트의 크기 찾기

은 SQL 쿼리입니까?

답변

7

멀티 바이트 문자 집합이 아닌 경우 LENGTH() 함수를 사용하지 않는 이유는 무엇입니까?

create table t 
(a longtext); 
insert into t (a) values ('abcdef'); 

select length(a) from t; 

멀티 바이트 문자가 있으면 문자 수 또는 바이트 수를 얻게됩니다.

주석에서 언급했듯이 멀티 바이트 문자 집합의 문자열 길이는 CHAR_LENGTH()를 사용하십시오.

+0

을 줄 것이다 UTF-8 또는 UTF-16에 대한이 작업을 수행합니까? – JAVAGeek

+1

문자열이 사용하는 바이트 수를 알고 싶다면 멀티 바이트 문자를 사용하십시오. 예 : 세개의 2 바이트 문자'LENGTH()'는 6을 반환합니다. 문자 수를 원하면'CHAR_LENGTH()' –

0
select length('this is a long text') 
1

,

select CHAR_LENGTH ('abc æøå'); 

당신에게 7

또는

을 줄 것이다
select CHAR_LENGTH ('漢語'); 

당신에게 2