REVERSE關鍵字之REVERSE函式
昨天說到@dbsnake講的一個reverse函式索引避免全表掃描的案例,REVERSE關鍵字可以用於函式和索引。REVERSE函式和REVERSE索引。這次先試試REVERSE函式。
REVERSE函式:針對資料庫內部儲存的物件編碼進行反轉。
REVERSE is an undocumented Oracle string function, which returns the input string in its reverse order.
SQL> select reverse('12345') from dual;
REVER
-----
54321
REVERSE函式是將數字的順序逆序列印。
SQL> select reverse('Oracle') from dual;
REVERS
------
elcarO
也可以將字母的順序逆序列印。
SQL> select reverse('測試') from dual;
REVE
----
????
列印出亂碼,可能是字符集的問題,當前使用的是SSH方式登入伺服器後sqlplus,
SQL> show parameter nls_lang
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
nls_language string AMERICAN
登入到筆記本的PLSQL中,由於OS是中文字符集,所以這裡應該可以顯示中文。
SQL> SELECT '測試' FROM dual;
'測試'
------
測試
SQL> select reverse('測試') from dual;
REVERSE('測試')
---------------
允獠
已經是亂碼了。
======================================================================
下面使用dump看看實際執行reverse的情況。
SQL> select dump('12345'), dump(reverse('12345')) from dual;
DUMP('12345') DUMP(REVERSE('12345'))
---------------------------- ----------------------------
Typ=96 Len=5: 49,50,51,52,53 Typ=96 Len=5: 53,52,51,50,49
將'12345'的ASCII字碼按逆序排列列印。
SQL> select dump('Oracle'), dump(reverse('Oracle')) from dual;
DUMP('ORACLE') DUMP(REVERSE('ORACLE'))
---------------------------------- ----------------------------------
Typ=96 Len=6: 79,114,97,99,108,101 Typ=96 Len=6: 101,108,99,97,114,79
將'Oracle'的ASCII字碼按逆序排列列印。
SQL> select dump('測試'), dump(reverse('測試')) from dual;
DUMP('測試') DUMP(REVERSE('測試'))
----------------------------- -----------------------------
Typ=96 Len=4: 178,226,202,212 Typ=96 Len=4: 212,202,226,178
這裡也是將‘測試’的ASCII字碼按逆序排列列印,但因為中文字元是由兩個ASCII組成的,當逆序時,新組合的ASCII兩兩形成一個新的漢字,212,202是允,226,178獠。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7192724/viewspace-773321/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle reverse函式Oracle函式
- js reverse()函式的作用JS函式
- JavaScript reverse()JavaScript
- reverse index 反轉索引相關Index索引
- Reverse Key IndexesIndex
- BUUCTF reverse 3
- javascript 陣列 reverse()JavaScript陣列
- Reverse Card (Hard Version)
- hackme 【攻防世界】Reverse
- 函式的關鍵字引數函式
- kotlin之plus、copyOf、reverse、forEach、filter、map、reduce、fold等函式解釋和使用KotlinFilter函式
- Python 函式 (關鍵字引數)Python函式
- Simple python reverse shellPython
- leetcode Reverse IntegerLeetCode
- Why would a reverse index be useful ?Index
- Reverse Key Indexes (219)Index
- Reverse學習筆記筆記
- 字串 reverse(str.begin(),str.end()) 函式的標頭檔案 以及 str.clear()函式字串函式
- [20120117]函式反轉字串reverse.txt函式字串
- Leetcode 7 Reverse IntegerLeetCode
- LeetCode-Reverse BitsLeetCode
- js String新增 reverse()方法JS
- 4. render, redirect, HttpResponse, reverseHTTP
- Reverse Integer leetcode javaLeetCodeJava
- javascript 函式作用域中的關鍵字this的指向JavaScript函式
- php生成器函式與yield關鍵字PHP函式
- ?Java8新特性之Lambda表示式,函式式介面,方法引用和default關鍵字Java函式
- 精讀《ObjectEntries, Shift, Reverse...》Object
- Leetcode-Problem:Reverse IntegerLeetCode
- 反向代理伺服器(Reverse Proxy)伺服器
- Leetcode Reverse Words in a StringLeetCode
- Leetcode Evaluate Reverse Polish NotationLeetCode
- leetcode Reverse Words in a StringLeetCode
- leetcode刷題--Reverse BitsLeetCode
- D2. Reverse Card (Hard Version)
- for 迴圈中倒序 用reverse
- 攻防世界 Replace Reverse二星題
- 92. Reverse Linked List II