posts - 1,comments - 0,trackbacks - 0

              From變化集錦
          1.從一個表中檢索
          select *
          from dbo.teacher
          2.從一個檢索結果中再檢索即從臨時表中檢索
          select *
          from (
              select teacher_id , teacher_name
              from dbo.teacher
          ) te
          where te.teacher_id <4
          3.從多表中檢索,構成笛卡爾積(效率低)
          select dbo.teacher.* , 系名
          from dbo.teacher , dbo.系
          where dbo.teacher.系_id = dbo.系.系_id
          4.多表的鏈接查詢(尊重左表)
          select *
          from dbo.系 left join dbo.teacher
          on dbo.系.系_id = dbo.teacher.系id
          (尊重右邊)
          select *
          from dbo.系 right join dbo.teacher
          on dbo.系.系_id = dbo.teacher.系_id
          (內連接 都不尊重)
          select *
              from dbo. inner join dbo.教師   
              on dbo.._ID=dbo.教師._ID inner join dbo.教師認課
              on dbo.
          教師.教師_ID=dbo.教師認課.教師_ID
          (全鏈接 都尊重)
          select *
              from dbo.系 all join dbo.teacher
              on dbo.系.系_id = dbo.teacher.系_id
          5.給被檢索表起別名  注意:起了別名就一定要用別名來引用字段
          錯誤的
          select dbo.teacher.teacher_id
          from dbo.teacher js
          正確的
          select js.teacher_id
          from dbo.teacher js
              where 集錦

          1.常規關系運算符 > >= < <= != <> =
          select 教師_ID
          from dbo.教師
          where 教師_ID<>1
          2.常規邏輯運算符 not , and ,or
          select teacher_id
          from dbo.teacher
          where not (teacher_id>=1 and teacher_id<=8)
          3.區間
          teacher_id >=1 并且 teacher_id<=8
          select teacher_id
          from dbo.teacher
          where teacher_id between 1 and 8
          4.檢索null值
          select teacher_id
          from dbo.teacher
          where teacher_date is null
          5.關于字符的模糊查詢
          (1)姓張的所有老師
          select teacher_id
          from dbo.teacher
          where teacher_name like '張%'
          (2)姓張的但是名字只有兩個字的老師
          select teacher_id
          from dbo.teacher
          where teacher_name like '張-'
          (3)名字含有國字的所有老師
          select teacher_id
          from dbo.teacher
          where teacher_name like '%國%'
          (4)老師的第一個名字在a-m之間的老師
          select teacher_id
          from dbo.teacher
          where teacher_name like '[a-m]%'
          (5)老師名字的第一個字母不在a-m之間的老師
          select teacher_id
          from dbo.teacher
          where teacher_name like '[^a-m]%'
          (6)老師的名字第一個字母是a或者b或者m的老師
          select teacher_id
          from dbo.teacher
          where teacher_name like '[a,b,m]%'
          (7)教師名字第一個字母在a到k之間或o到x之間的老師
          select teacher_id
          from dbo.teacher
          where teacher_name like '[a-k,o-x]%'
          6.關于in的用法
          (1)枚舉型
          select *
          from dbo.teacher
          where teacher_id in (1,3,5)

          select*
          from dbo.teacher
          where teacher_id not in(1,3,5)
          (2)嵌套子查詢
          有課上的老師
          select *
          from dbo.teacher
          where teahcer_id in (
              select teacherid
              from dbo.教師任課
          )
          7.exists判斷子查詢是否有結果(強調有無,不關心具體是什么)
          select *
          from dbo.教師
          where exists   --存在
          (
            select *
              from dbo.教師認課
              where dbo.教師認課.教師_ID=dbo.教師.教師_ID
          )
          8.any其中一個
          教師ID大于所有教師ID中任意一個的教師(相當于大于最小ID的教師)
          select *
          from dbo.teahcer
          where teahcer_id > any
          (    select teacher_id
              from dbo.teacher

          )
          9.all全部
          相當于大于最大max
          select *
          from dbo.teacher
          where teacher_id > all(
              select teacher_id
              from dbo.teacher\
          )

           

           

           

           

           

           

           

           

           


          posted on 2010-04-01 23:38 zZ的家伙 閱讀(93) 評論(0)  編輯  收藏 所屬分類: sql語句

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 文成县| 顺昌县| 伊宁市| 隆化县| 潍坊市| 旬邑县| 自贡市| 体育| 灵丘县| 汉中市| 仁布县| 慈利县| 新余市| 西宁市| 胶州市| 鹿泉市| 岳阳县| 长阳| 怀柔区| 宝兴县| 将乐县| 比如县| 仙游县| 都昌县| 沾化县| 哈密市| 新乐市| 正安县| 永德县| 西安市| 梁河县| 绵阳市| 鄂州市| 梅州市| 个旧市| 历史| 杨浦区| 宾川县| 牡丹江市| 思南县| 溧阳市|