熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

ORACLE常用傻瓜問題1000問全集(三)

2022-06-13   來源: Oracle 

   /*+NOCACHE(TABLE)*/
     當進行全表掃描時CACHE提示能夠將表的檢索塊放置在緩沖區緩存中最近最少列表LRU的最近使用端
     例如
     SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS
   /*+APPEND*/
     直接插入到表的最後可以提高速度
     insert /*+append*/ into test select * from test
   /*+NOAPPEND*/
     通過在插入語句生存期內停止並行模式來啟動常規插入
     insert /*+noappend*/ into test select * from test
  ORACLE內部函數
   如何得到字符串的第一個字符的ASCII值?
     ASCII(CHAR)
     SELECT ASCII(ABCDE) FROM DUAL
     結果
   如何得到數值N指定的字符?
     CHR(N)
     SELECT CHR() FROM DUAL
     結果 D
   如何連接兩個字符串?
     CONCAT(CHARCHAR)
     SELECT CONCAT(ABCDEFGH) FROM DUAL
     結果 ABCDEFGH
   如何將列中的數值代替為字符串?
     DECODE(CHARNCHARNCHAR)
     SELECT DECODE(DAYSUNMON) FROM DUAL
   INITCAP(CHAR)
     將字符串CHAR的第一個字符為大寫其余為小寫
     SELECT INITCAP(ABCDE) FROM DUAL
   LENGTH(CHAR)
     取一字符串CHAR的長度
     SELECT LENGTH(ABCDE) FROM DUAL
   LOWER(CHAR)
     將字符串CHAR全部變為小寫
     SELECT LOWER(ABCDE) FROM DUAL
   LPAD(CHARNCHAR)
     用字符串CHAR包括的字符左填CHAR使其長度為N
     SELECT LPAD(ABCDEFG) FROM DUAL
     結果 ABCDEFG
   LTRIM(CHARSET)
     從字符串CHAR的左邊移去字符串SET中的字符直到第一個不是SET中的字符為止
     SELECT (CDEFGCD) FROM DUAL
     結果 EFG
   NLS_INITCAP(CHAR)
     取字符CHAR的第一個字符大寫其余字符為小寫
     SELECT NLS_INITCAP(ABCDE) FROM DUAL
   NLS_LOWER(CHAR)
     將字符串CHAR包括的字符全部小寫
     SELECT NLS_LOWER(AAAA) FROM DUAL
   NLS_UPPER(CHAR)
     將字符串CHAR包括的字符全部大寫
     SELECT NLS_UPPER(AAAA) FROM DUAL
   REPLACE(CHARCHARCHAR)
     用字符串CHAR代替每一個列值為CHAR的列其結果放在CHAR
     SELECT REPLACE(EMP_NO) FROM DUAL
   RPAD(CHARNCHAR)
     用字符串CHAR右填字符串CHAR使其長度為N
     SELECT RPAD() FROM DUAL
   RTRIM(CHARSET)
     移去字符串CHAR右邊的字符串SET中的字符直到最後一個不是SET中的字符為止
     SELECT RTRIM(ABCDEDE) FROM DUAL
   SUBSTR(CHARMN)
     得到字符串CHAR從M處開始的N個字符 雙字節字符一個漢字為一個字符的
     SELECT SUBSTR(ABCDE) FROM DUAL
   SUBSTRB(CHARMN)
     得到字符串CHAR從M處開始的N個字符 雙字節字符一個漢字為二個字符的
     SELECT SUBSTRB(ABCDE) FROM DUAL
   TRANSLATE(CHARCHARCHAR)
     將CHAR中的CHAR的部分用CHAR代替
     SELECT TRANSLATE(ABCDEFGHDEMN) FROM DUAL
   UPPER(CHAR)
     將字符串CHAR全部為大寫
   ADD_MONTHS(DN)
     將N個月增加到D日期
     SELECT ADD_MONTHS(SYSDATE) FROM DUAL
   LAST_DAY(D)
     得到包含D日期的月份的最後的一天的日期
     SELECT LAST_DAY(SYSDATE) FROM DUAL
   MONTH_BETWEEN(DD)
     得到兩個日期之間的月數
     SELECT MONTH_BETWEEN(DD) FROM DUAL
   NEXT_DAY(DCHAR)
     得到比日期D晚的由CHAR命名的第一個周日的日期
     SELECT NEXT_DAY(TO_DATE(//)SATDAY) FROM DUAL
   ROUNT(DFMT)
     得到按指定的模式FMT捨入到的最進的日期
     SELECT ROUNT(//MONTH) FROM DUAL
   SYSDATE
     得到當前系統的日期和時間
     SELECT SYSDATE FROM DUAL
   TO_CHAR(DFMT)
     將日期D轉換為FMT的字符串
     SELECT TO_CHAR(SYSDATEYYYY/MM/DD) FROM DUAL
   TO_DATE(CHARFMT)
     將字符串CHAR按FMT的格式轉換為日期
     SELECT TO_DATE(//YYYY/MM/DD) FROM DUAL
   ABS(N)
     得到N的絕對值
     SELECT ABS() FROM DUAL
   CEIL(N)
     得到大於或等於N的最大整數
     SELECT CEIL() FROM DUAL
   COS(N)
     得到N的余弦值
     SELECT COS() FROM DUAL
   SIN(N)
     得到N的正弦值
     SELECT SIN() FROM DUAL
   COSH(N)
     得到N的雙曲余弦值
     SELECT COSH() FROM DUAL
   EXP(N)
     得到N的E的N次冪
     SELECT EXP() FROM DUAL
   FLOOR(N)
     得到小於或等於N的最小整數
     SELECT FLOOR() FROM DUAL
   LN(N)
     得到N的自然對數
     SELECT LN() FROM DUAL
   LOG(MN)
     得到以M為底N的對數
     SELECT LOG() FROM DUAL
   MOD(MN)
     得到M除以N的余數
     SELECT MOD() FROM DUAL
   POWER(MN)
     得到M的N冪
     SELECT POWER() FROM DUAL
   ROUND(NM)
     將N捨入到小數點後M位
     SELECT () FROM DUAL
   SIGN(N)
     當N<0時,得到-1;
     當N>得到
     當N=得到
     SELECT SIGN() FROM DUAL
   SINH(N)
     得到N的雙曲正弦值
     SELECT SINH() FROM DUAL
   SORT(N)
     得到N的平方根N>=
     SELECT SORT() FROM DUAL
   TAN(N)
     得到N的正切值
     SELECT TAN() FROM DUAL
   TANH(N)
     得到N的雙曲正切值
     SELECT TANH() FROM DUAL
   TRUNC(NM)
     得到在M位截斷的N的值
     SELECT TRUNC() FROM DUAL
   COUNT()
     計算滿足條件的記錄數
     SELECT COUNT(*) FROM TABLE WHERE COL=AAA
   MAX()
     對指定的列求最大值
     SELECT MAX(COL) FROM TABLE
   MIN()
     對指定的列求最小值
     SELECT MIN(COL) FROM TABLE
   AVG()
     對指定的列求平均值
     SELECT AVG(COL) FROM TABLE
   SUM()
     計算列的和
     SELECT SUM(COL) FROM DUAL
   TO_NUMBER(CHAR)
     將字符轉換為數值
     SELECT TO_NUMBER() FROM DUAL
   CHARTOROWID(CHAR)
     將包含外部語法ROWID的CHAR或VARCHAR數值轉換為內部的二進制語法參數CHAR必須是包含外部語法的ROWID的字符的字符串
     SELECT NAME FROM BSEMPMS WHERE ROWID=CHARTOROWID(AAAAfZAABAAACpAAO)
     NAME LEIXUE
   CONVERT(CHARDEST_CHAR_SETSOURCE_CHAR_SET)
     CONVERT將字符串CHAR中的字符從SOURCE_CHAR_SET標識的字符集轉換為由DEST_CHAR_SET標識的字符集
     SELECT CONVERT(GroBUSASCIIWEHP) CONVERSION FROM PUBS
     CONVERSION Gross
   HEXTORAW(CHAR)
     將包含十六進制的CHAR轉換為一個RAW數值
     INSERT INTO BSEMPMS(RAW_COLUMN) SELECT HEXTORAW(D) FROM TEST
   RAWTOHEX(RAW)
     將RAW數值轉換為一個包含十六進制的CHAR值
     SELECT RAWTOHEX(RAW_COLUMN) CONVERSION FROM BSEMPMS
     CONVERSION D
   ROWIDTOCHAR(ROWID)
     將一個ROWID數值轉換為VARCHAR數據類型
     SELECT ROWID FROM BSEMPMS WHERE ROWIDTOCHAR(ROWID) LIKE %BRAAB%
   TO_MULTI_BYTE(CHAR)
     將CHAR中的單字節轉換為等價的多字節字符 From:http://tw.wingwit.com/Article/program/Oracle/201311/17221.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.