Oracle資料庫之SQL—select之二

來源:互聯網
上載者:User

                     前面談到了select的一些簡單的運用,此次會更進一步的學習select查詢。

        包括:where條件限定查詢、範圍查詢、模糊查詢、查詢結果的排序.

            where條件限定查詢

 

         select *from emp where emp.deptno = 10;--查詢公寓號為10的所有員工         select *from emp where job='CLERK';--注意CLERK是大小寫敏感的

                 
                   我們知道Condition由列名運算式,常量和比較操作符組成,那麼都有哪些比較操作符呢?

 

                                                              常用比較操作符

                   

                     以上各個比較操作符就不一一嘗試了!以後會遇到的。

        範圍查詢(Between and)

                  現實中我們有這種需求,需要查詢一個資料區段,這就可以使用between and實現了                      

           --查詢工資在4000-8000的員工             select *from emp where sal between 4000 and 8000;

                     Tips:這裡需要注意的是between 後面要先寫低值後寫高值,不然語句不會錯

 

                       但是不可能查詢到結果!

        模糊查詢(Like 、Not Like)

                   like 模糊查詢一般是針對字元匹配操作的。  字元匹配操作可以使用萬用字元 “%” 和 “_”:

                      %:表示任意個字元,包括零個;                      _:表示一個任一字元;
                   簡單例子:    

            select *from emp where ename like '_M%';--查詢名字的第二個字元為"M"的員工

                    不過這裡需要思考的是:如果我們需要查詢的字串中存在“%”、“-”之類的情況又如何呢?
                    解決辦法:
使用escape

                 簡單例子:                  

          insert into emp(Ename,Empno) VALUES('K%iritor',100);--人為的插入一條語句          select *from emp where ename like 'K/%iritor' escape '/' ;

               通過escape加上“/”逸出字元(逸出字元可以自己任意指定),將逸出字元後面的字元
                       轉義為原來的字元,其中逸出字元的指定和使用者需要查詢的欄位的值有關。

               至於not like就不做過多示範了!

        結果排序

                       
ASC:升序排序,預設的。

              select *from emp order by sal;

                       DESC:降序排序 

              select *from emp order by sal;

                   以上都是針對單列進行排序如何針對多列進行排序呢?                     

             --先對工資升序,若工資相同則對名字進行降序  
select *from emp order by sal asc,ename desc;

       

                就這樣吧,至於上表中的一些比較操作符,日後會用到的!

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.