2
我只是發現了一些......我不知道我會叫它但這裏有雲:甲骨文length()函數返回不正確的值
SELECT part_num,
length(trim(part_num))
FROM part_programs
WHERE rownum <= 10;
...結果:
PART_NUM LENGTH(TRIM(PART_NUM))
--------------- ----------------------
THAB256 8
THA1256674 11
THA1256674GU 13
THA1257141 11
THA1257141FR 13
THA1257141FR1 14
THA1257141TD 13
THA2002013 11
THA2002013MI 13
THA2002013MI1 14
length()調用返回的整數實際上返回值的1 + realLength。
我不知道從哪裏開始,任何人都在關注光?
這聽起來像是望着場中的細節一個足夠的猜測 - 測試,用已知數據執行插入語句並查看輸出的長度。此外,如果您有UNIX和SQL命令行界面,請嘗試類似於「part_programs | od -xcb中的oracle select part_num」以獲取輸出的十六進制轉儲 - 可能會在列中顯示不友好的字符。 – paxdiablo 2009-10-13 04:35:40
包圍是一個不錯的主意 - 我喜歡這個。爲了得到真正的長度,你可以嘗試如下所示:length(trim(replace(replace(part_num,chr(10)),chr(13)))) – 2009-10-13 13:05:45