<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Cyh的博客

    Email:kissyan4916@163.com
    posts - 26, comments - 19, trackbacks - 0, articles - 220

    常用SQL語(yǔ)句

    Posted on 2009-02-16 19:23 啥都寫(xiě)點(diǎn) 閱讀(187) 評(píng)論(0)  編輯  收藏

    --字符函數(shù)

    select LENGTH('HelloWorld') from dual;

    select LTRIM('   HelloWorld  ') from dual;

    select RTRIM('   HelloWorld  ') from dual;

    select TRIM('   HelloWorld  ') from dual;

    select TRIM('H' FROM 'HelloWorld') from dual;

    select SUBSTR('HelloWorld',1,5) from dual; 從第一個(gè)位置截取5個(gè)

     

    select LOWER('SQL Course') from dual;   全部小寫(xiě)

    select UPPER('SQL Course') from dual;   全部大寫(xiě)

    select INITCAP('SQL Course') from dual; 首字母大寫(xiě)

     

    select CONCAT('Hello', 'World') from dual; 連接兩個(gè)字符串,只能連接兩個(gè)

    select INSTR('HelloWorld', 'W') from dual; 算出字符串當(dāng)中的另一字符串出現(xiàn)的位置

    select LPAD('salary',10,'*') from dual; 從左到右墊上10個(gè)字符,不夠的話,在左邊添*

    select RPAD('salary', 10, '*') from dual;

     

    --數(shù)值函數(shù)

    select ROUND(45.926, 2)     from dual;

    select TRUNC(45.926, 2)      from dual; 直接干掉小數(shù)點(diǎn)后面第三位

    select MOD(1600, 300) from dual;

     

    --日期函數(shù)

    select sysdate from dual;

    select MONTHS_BETWEEN (to_date('2007-12-1','yyyy-mm-dd'),sysdate) from dual;

    select ADD_MONTHS (sysdate,6) from dual;

    select NEXT_DAY (sysdate,'星期五') from dual;

    select LAST_DAY(sysdate) from dual;

     

    select ROUND(SYSDATE,'MONTH') from dual;

    select ROUND(to_date('2007-8-15','yyyy-mm-dd'),'MONTH') from dual;

    select ROUND(to_date('2007-8-16','yyyy-mm-dd'),'MONTH') from dual;

     

    select ROUND(SYSDATE ,'YEAR') from dual;

    select ROUND(to_date('2007-6-30','yyyy-mm-dd'),'year') from dual;

    select ROUND(to_date('2007-7-1','yyyy-mm-dd'),'year') from dual;

     

     

    select TRUNC(SYSDATE ,'MONTH') from dual;      

    select TRUNC(to_date('2007-8-15','yyyy-mm-dd'),'MONTH') from dual;

    select TRUNC(to_date('2007-8-16','yyyy-mm-dd'),'MONTH') from dual;

     

    select TRUNC(SYSDATE ,'YEAR') from dual;       

    select TRUNC(to_date('2007-6-30','yyyy-mm-dd'),'year') from dual;

    select TRUNC(to_date('2007-7-1','yyyy-mm-dd'),'year') from dual;

     

    --數(shù)據(jù)類(lèi)型轉(zhuǎn)換函數(shù)

    select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

    select to_char(123456.789,'9,999,999.99') from dual;

     

    select to_number('123456.789') from dual;

    select to_date('2000-01-01 13:23:45','yyyy-mm-dd hh24:mi:ss') from dual;   時(shí)間制一定要前后對(duì)應(yīng)

     

    --常規(guī)函數(shù)

    select ename,nvl(comm,0) from emp;

    select ename,sal,comm,

           nvl2(comm, sal+comm, sal)

    from emp;

     

    select ename,job,

          nullif(length(ename),length(job))

    from emp      

     

    select ename,deptno,sal,

           case deptno

             when 10 then sal*10

             when 20 then sal*20

             when 30 then sal*30

             else 0

           end as test

    from emp

     

    select ename,deptno,sal,

           decode(deptno,10,sal*10,20,sal*20,30,sal*30) as test

    from emp

     

    select deptno,

           sum(decode(deptno,10,1)) as deptno10,

           sum(decode(deptno,20,1)) as deptno20,

           sum(decode(deptno,30,1)) as deptno30

    from emp

    group by deptno

     

    --連接查詢

    select ename,job,dname

    from emp ,dept

    where emp.deptno =  dept.deptno

     

    select ename,job,dname

    from emp a,dept b

    where a.deptno =  b.deptno

     

    select ename,job,a.deptno,dname

    from emp a,dept b

    where a.deptno =  b.deptno

     

    select ename,job,a.deptno,dname

    from emp a,dept b

     

    select ename,sal,grade

    from emp a,salgrade b

    where a.sal >= b.losal

       and a.sal <= b.hisal

     

    select ename,sal,grade

    from emp a,salgrade b

    where a.sal between b.losal and b.hisal

     

    select dname,ename

    from dept a left join emp b

      on a.deptno = b.deptno

     

    select dname,ename

    from dept a left join emp b

      on a.deptno = b.deptno

      and a.deptno = 10

     

    select dname,ename

    from dept a right join emp b

      on a.deptno = b.deptno

      and b.deptno = 10

     

    select dname,ename

    from dept a full join emp b

      on a.deptno = b.deptno

      and b.deptno = 10

     

    select dname,ename

    from dept a ,emp b

    where a.deptno = b.deptno(+)

      and b.deptno(+) = 10

     

    select e.ename,m.ename

    from emp e,emp m

    where e.mgr = m.empno 

     

    對(duì)PLSQL NVL函數(shù)的用法還不是很了解  已解決(有n 個(gè)參數(shù),函數(shù)就為NVLn-1

                                             從左到右,返回不為空的值)

    select ename,job,
          nullif(length(ename),length(job))  
    已解決(若兩個(gè)長(zhǎng)度相等,則為空,否則

    from emp       返回第一個(gè)的參數(shù)的長(zhǎng)度)

    select ename,deptno,sal,
           case deptno
             when 10 then sal*10
             when 20 then sal*20
             when 30 then sal*30
             else 0
           end as test
            from emp

     

    Select ename,deptno,sal,decode(deptno,10,sal*10,20,sal*20,30,sal*30) as test

    From emp 已解決(類(lèi)似與 case

    select dname,ename
    from dept a left join emp on a.deptno = b.deptno
    and a.deptno = 10  

    select dname,ename               已解決

    from dept a full join emp b

      on a.deptno = b.deptno

      and b.deptno = 10


    select dname,ename                已解決
    from dept a ,emp b
    where a.deptno = b.deptno(+)
     and b.deptno(+) = 10

    select deptno,dname
    from dept
    where exists (select deptno             
    未解決
                  from emp
                  where dept.deptno = emp.deptno)   

     

    select a.empno,a.ename,a.sal

    from emp a,(select deptno,avg(sal) as avgsal

                from emp

                group by deptno) b

    where a.deptno = b.deptno and a.sal > b.avgsal

                                       

    select (select count(*) from dept) +

               (select count(*) from emp)

    from dual

                

    select empno,ename,deptno

    from emp

    where deptno = 10 or deptno = 20

    union

    select empno,ename,deptno

    from emp

    where deptno = 10 order by empno



                                                                                                           --    學(xué)海無(wú)涯
            


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 久久亚洲AV无码精品色午夜麻豆| 亚洲精品无码久久久久去q| 亚洲a∨无码男人的天堂| 亚洲精品黄色视频在线观看免费资源 | 精品久久久久亚洲| 亚洲无线一二三四区| 好吊妞在线成人免费| 一级一看免费完整版毛片| 777亚洲精品乱码久久久久久| 亚洲一区二区视频在线观看 | 精品亚洲综合久久中文字幕| 四虎亚洲国产成人久久精品| 男人进去女人爽免费视频国产| 国产精品亚洲自在线播放页码| 亚洲小视频在线观看| 亚洲国产日韩在线视频| 亚洲毛片网址在线观看中文字幕| 免费一级毛片一级毛片aa| 国外成人免费高清激情视频| 国产日本一线在线观看免费| 成人自慰女黄网站免费大全| 美女被艹免费视频| 亚洲人成网站18禁止久久影院| 久久久久亚洲AV片无码下载蜜桃| 国产免费131美女视频| 在线观看无码的免费网站| 巨胸喷奶水视频www网免费| 免费视频专区一国产盗摄| 最近中文字幕完整版免费高清| 无码国产精品一区二区免费vr | 久久亚洲精品无码| 免费在线观看视频a| 亚洲av区一区二区三| 亚洲国产成人a精品不卡在线 | 一区二区三区免费视频播放器| 国产午夜亚洲精品不卡免下载| 色天使亚洲综合一区二区| 亚洲AV成人一区二区三区观看| 午夜亚洲WWW湿好爽| 免费大片av手机看片高清| 久久久久精品国产亚洲AV无码|