2011-07-04 33 views

Trả lời

49

Bạn có thể sử dụng LENGTH() cho CHAR/VARCHAR2 và DBMS_LOB.GETLENGTH() cho CLOB. Cả hai hàm sẽ đếm các ký tự thực tế (không phải byte).

Xem tài liệu được liên kết nếu bạn cần byte.

+1

Tôi đã, nhân dịp, thấy rằng pad với không gian trống để làm cho dữ liệu trong một thời gian thống nhất cột và phải sử dụng 'LENGTH (TRIM())' để có độ dài giá trị thực. – Wayne

+1

@Wayne Thường là trường hợp đối với cột 'CHAR' - cột' CHAR' luôn được đệm theo độ dài được xác định, trong khi cột 'VARCHAR' thì không. –

+2

@FrankSchmitt Tôi nhận ra điều đó nhưng nghĩ rằng nó có thể hữu ích đối với một số người vì bạn không cần khoảng trắng khi truy vấn 'CHAR' và kiểu dữ liệu không phải lúc nào cũng rõ ràng mà không kiểm tra lược đồ. – Wayne

18

bạn cần chiều dài) chức năng (

select length(customer_name) from ar.ra_customers 
1

Bất kể lại ví dụ của bạn

select length('Burger') from dual; 

Tôi hy vọng điều này sẽ giúp hệ thống :)

Các vấn đề liên quan