如何在列中获得实际的价值长度?
My(oracle)sql命令返回可以插入列的最大值,而不是真正的值的长度.
如何解决这个问题?
sql> SELECT typ,length(t1.typ) FROM AUTA_VIEW t1; TYP LENGTH(T1.TYP) ---------- -------------- BMW 10 BMW 10 BMW 10 Ferrari 10 BMW 10 Audi 10 Audi 10 Audi 10 Ferrari 10 Ferrari 10 Mercedes 10
LENGTH()确实返回字符串长度(刚刚验证).我想你的数据填充空白 – 尝试
原文链接:/oracle/204908.htmlSELECT typ,LENGTH(TRIM(t1.typ)) FROM AUTA_VIEW t1;
代替.
正如OraNob所说,另一个原因可能是使用CHAR,在这种情况下,LENGTH()也将返回列宽,而不是字符串长度.但是,TRIM()方法在这种情况下也是有效的.