隨筆-7  評論-24  文章-102  trackbacks-0

          附錄:
          1、SQL 簡介
          2、SQL 操作符
          3、Oracle 常用數據類型
          4、Oracle 函數
          5、[轉] Oracle 常用SQL語法



          字符串函數
          LENGTH()    字符長度
          LENTTHB()    字節長度;一個漢字內存中占用 2字節

          LTRIM、RTRIM、TRIM

          截串
          SUBSTR(表達式,位置,長度)
          Oracle 無左右取串函數,但可以使用變通方式完成。
          左取串:    SUBSTR('abcdefg', 1, 3)
          右取串:    SUBSTR('abcedfg', LENGTH('abcdefg')-3+1, 3)


          時間函數
          sysdate、current_day
          設置時間格式:    ALERT SESSION SET NLS_DATE_FORMAT = 'dd-mon-yyyy HH:mi:ss'
          求時間:        NEXT_DAY(sysdate, '星期三')


          轉換函數
          TO_CHAR(sysdate, 'yyyy-mm-dd hh24:mi:ss')
          TO_DATE('12-3月-04')
          TO_NUMBER('333')        必須是能轉換
          TO_TIMESTAMP('2007-10-10 00:00:00.0', 'yyyy-mm-dd hh24:mi:ssxff')    轉換為時間戳格式

          聚合函數
          count(*)    :查詢表行數
          count(column)    :查詢列行數,會忽略空值,注意
          ps.聚合函數不能做為 where 里查詢條件出現(因為聚合是對所有查詢結果的運算?)


          其他函數
          USER:當前用戶
          SUM(DECODE(SEX, '男', 1, 0))    篩選出行被為男的記錄 并加1
          SUM(DECODE(SEX, '女', 1, 0))    篩選出行被為女的記錄 并加1
          NVL(a2, '非輸入')        布爾值判斷,利用系統對空值進行處理
          SELECT DISTINCT a1 FROM aa   


          表連接
          內連接:查詢時,把能夠公共匹配的數據完全查詢出來。
              FROM e, d WHERE e.id = d.id
              標準: FROM e JOIN d ON e.id = d.id

          外連接:不完全匹配
            左連接:  FROM e JOIN d ON e.id = d.id(+)
              左邊數據全部顯示,右邊匹配不上的部分用空值代替
            右連接:  FROM e JOIN d ON e.id(+) = d.id
              (同理左連接)


          子查詢
              無關子查詢
              相關子查詢

          EXISTS():    根據子查詢返回是否存在數據來決定父查詢。

          UNION:        將多個查詢出來的信息行整合成一個結果集。
            SELECT eid, ename FROM e
            UNION
            SELECT id, name FROM d
            ps.UNION 查詢出來的重復記錄不會顯示,UNION ALL 則顯示全部(包括重復的)。

          INTERSECT:    返回查詢出來信息行的交集,Oracle 獨有。

          利用查詢結果批量更新:
            INSERT INTO e(eid, ename) SELECT id, name FROM d
          或者利用查詢結果創建新表:
            CREATE TABLE ttt AS ttt (SELECT * FROM e)


          附加:
          1、SQL 簡介


          2、SQL 操作符


          3、Oracle 常用數據類型


          4、Oracle 函數

          5、[轉] Oracle 常用SQL語法和數據對象
          數據控制(DML)

          數據定義(DDL)

          查詢語句(SELECT)

          ORACLE里常用的數據對象

          權限管理(DCL)
          --------------------------------------------------------------------------------
          簡單查詢

          分組查詢語句

          連接查詢

          子查詢

          DDL,DML 中的子查詢
          -----------------------------------------------------------------------------------
          SQL 語句分析

          SQL 優化法則


          posted on 2008-10-16 23:34 黃小二 閱讀(39891) 評論(0)  編輯  收藏 所屬分類: [DB].Oracle
          主站蜘蛛池模板: 永修县| 鸡泽县| 宁远县| 苍山县| 宁国市| 龙州县| 巴林右旗| 昭觉县| 怀柔区| 临江市| 阜南县| 南阳市| 科技| 泾阳县| 临潭县| 河西区| 靖远县| 昌吉市| 台南县| 清水县| 唐河县| 台东县| 玉门市| 洪江市| 临夏市| 潢川县| 庆阳市| 濮阳市| 定兴县| 开封县| 长治市| 新昌县| 阿瓦提县| 宜春市| 离岛区| 大宁县| 宁津县| 织金县| 高邑县| 扎兰屯市| 尤溪县|