關於函式索引的問題?

lfree發表於2006-01-21

前幾天,要建立一個函式索引,遇到的一些奇怪問題,討論連結在

這裡:http://www.itpub.net/480995.html

yangtingkun給出了很好的解析與例子記錄如下:

http://blog.itpub.net/post/468/50898

轉載:明白了Oracle所定義的規則。由於英文會出現首字母大寫的情況,所以Oracle在判定的時候首先判斷第一位的大小寫狀態,如果是小寫,就不繼續判斷後面的內容了,而把整個字串都當作小寫。如果第一位是大寫,Oracle繼續判斷第二位,如果也是大寫,那麼Oracle就把整個字串都當作大寫,如果第二位是小寫,則Oracle認為這種情況是首字母大寫,就把第一個字母當作大寫,而剩餘字元做小寫出來。

如果有興趣可以對SELECT TO_CHAR(SYSDATE, 'Month') FROM DUAL;進行測試,不管給出的Month的大小寫如何變,Oracle的輸出結果只有三種,大寫、小寫和首字母大寫。

SQL> SELECT TO_CHAR(SYSDATE, 'Month') FROM DUAL;

TO_CHAR(S
---------
January

SQL> SELECT TO_CHAR(SYSDATE, 'MOnth') FROM DUAL;

TO_CHAR(S
---------
JANUARY

SQL> SELECT TO_CHAR(SYSDATE, 'MoNTH') FROM DUAL;

TO_CHAR(S
---------
January

SQL> SELECT TO_CHAR(SYSDATE, 'mONTH') FROM DUAL;

TO_CHAR(S
---------
january


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-82815/,如需轉載,請註明出處,否則將追究法律責任。

相關文章