【oracle】SQL基本寫法

  1. 建表語句:

    CREATE TABLE DIC_ORG_ADDR(
        ID varchar(32) primary key NULL,
        ORGAN_ID varchar(32) NULL,
        ORGAN_NAME varchar(32) NULL,
        ORGAN_ADDR VARCHAR(100) NULL,
        TYPE CHAR(1) NULL
    )

  2. 插入語句:

    insert into DIC_ORG_ADDR(ID,ORGAN_ID,ORGAN_NAME,ORGAN_ADDR,TYPE )

    values("1","01","公安局","黑空街200號","1")

    或是

    insert into DIC_ORG_ADDR(ID,ORGAN_ID,ORGAN_NAME,ORGAN_ADDR,TYPE )
    select * from OTHERS

  3. 刪除語句:

    delete from DIC_ORG_ADDR where ID='1'

  4. 刪除表語句:

    drop table DIC_ORG_ADDR

  5. 修改表結構:

    新增字段:

    ALTER TABLE DIC_ORG_ADDR
     ADD ( "valid" VARCHAR2(25) NULL )

    刪除字段:
    ALTER TABLE DIC_ORG_ADDR
     DROP ( "TYPE" ) CASCADE CONSTRAINT
    GO

  6. 修改數據:

    update  DIC_ORG_ADDR set type='0' where ID='1'

  7. 查詢語句:

    select * from DIC_ORG_ADDR

  8. 創建自增長序列:

    創建序列:

       create sequence id_seq increment by 1 start with 1;(從1開始每次增1)
       創建觸發器:(觸發器名爲trg_seq_pid ,在向DIC_ORG_ADDR表做 插入之前,

       使用id_seq.nextval自增長序列,使id字段自增長。這樣插入的時候,主鍵不用輸入數據庫就會自動添加自增長的主鍵值了 )

       create or replace trigger trg_seq_pid BEFORE  
       insert ON  DIC_ORG_ADDR FOR EACH ROW  
       begin  
       select  id_seq.nextval into:New.id from dual;  
       end  trg_seq_pid ;

 9.   字符串連接符:||

       select name||'%' from  users;

10.  截取符:trunc

       select trunc(num,2) from users; 截取保留小數點後兩位,不進行四捨五入

11. case when

      update users set name = (case when name='張三' then '李四' else '無名' end) where name is not null;

12.  左連接:左邊的表數據內容一定存在,右邊連接的如果不存在則爲null

        select * from INFO a left join RESULT d on a.id = d.resource_guid

        全連接:相當與where條件

       select * from INFO a join RESULT d on a.id = d.resource_guid

 13.  轉換爲字符串: to_char()

        select * from users where to_char('create_time','yyyy-MM-dd')<=sysdate;

14.   時間加天數:時間直接加數字

       select * from users where create_time+15 = sysdate;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章