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

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

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

    Transact SQL 常用語句以及函數(shù)簡易說明(含示例)

    Transact SQL?? 語?句?功?能?
    ========================================================================

      
    -- 數(shù)據(jù)操作?

      ?
    SELECT ? -- 從數(shù)據(jù)庫表中檢索數(shù)據(jù)行和列?
           INSERT ? -- 向數(shù)據(jù)庫表添加新數(shù)據(jù)行?
           DELETE ? -- 從數(shù)據(jù)庫表中刪除數(shù)據(jù)行?
           UPDATE ? -- 更新數(shù)據(jù)庫表中的數(shù)據(jù)?

      
    -- 數(shù)據(jù)定義?

      ?
    CREATE ? TABLE ? -- 創(chuàng)建一個(gè)數(shù)據(jù)庫表?
           DROP ? TABLE ? -- 從數(shù)據(jù)庫中刪除表?
           ALTER ? TABLE ? -- 修改數(shù)據(jù)庫表結(jié)構(gòu)?
           CREATE ? VIEW ? -- 創(chuàng)建一個(gè)視圖?
           DROP ? VIEW ? -- 從數(shù)據(jù)庫中刪除視圖?
           CREATE ? INDEX ? -- 為數(shù)據(jù)庫表創(chuàng)建一個(gè)索引?
           DROP ? INDEX ? -- 從數(shù)據(jù)庫中刪除索引?
           CREATE ? PROCEDURE ? -- 創(chuàng)建一個(gè)存儲(chǔ)過程?
           DROP ? PROCEDURE ? -- 從數(shù)據(jù)庫中刪除存儲(chǔ)過程?
           CREATE ? TRIGGER ? -- 創(chuàng)建一個(gè)觸發(fā)器?
           DROP ? TRIGGER ? -- 從數(shù)據(jù)庫中刪除觸發(fā)器?
           CREATE ? SCHEMA ? -- 向數(shù)據(jù)庫添加一個(gè)新模式?
           DROP ? SCHEMA ? -- 從數(shù)據(jù)庫中刪除一個(gè)模式?
           CREATE ?DOMAIN? -- 創(chuàng)建一個(gè)數(shù)據(jù)值域?
           ALTER ?DOMAIN? -- 改變域定義?
           DROP ?DOMAIN? -- 從數(shù)據(jù)庫中刪除一個(gè)域?

      
    -- 數(shù)據(jù)控制?

      ?
    GRANT ? -- 授予用戶訪問權(quán)限?
           DENY ? -- 拒絕用戶訪問?
           REVOKE ? -- 解除用戶訪問權(quán)限?

      
    -- 事務(wù)控制?

      ?
    COMMIT ? -- 結(jié)束當(dāng)前事務(wù)?
           ROLLBACK ? -- 中止當(dāng)前事務(wù)?
           SET ? TRANSACTION ? -- 定義當(dāng)前事務(wù)數(shù)據(jù)訪問特征?

      
    -- 程序化SQL?

      ?
    DECLARE ? -- 為查詢設(shè)定游標(biāo)?
          EXPLAN? -- 為查詢描述數(shù)據(jù)訪問計(jì)劃?
           OPEN ? -- 檢索查詢結(jié)果打開一個(gè)游標(biāo)?
           FETCH ? -- 檢索一行查詢結(jié)果?
           CLOSE ? -- 關(guān)閉游標(biāo)?
           PREPARE ? -- 為動(dòng)態(tài)執(zhí)行準(zhǔn)備SQL?語句?
           EXECUTE ? -- 動(dòng)態(tài)地執(zhí)行SQL?語句?
          DESCRIBE? -- 描述準(zhǔn)備好的查詢  ?

      
    -- -局部變量?

      ?
    declare ? @id ? char ( 10 )?
          
    -- set?@id?=?'10010001'?
           select ? @id ? = ? ' 10010001 '   ?

      
    -- -全局變量?

      
    -- -必須以@@開頭  ?

      
    -- IF?ELSE?

      
    declare ? @x ? int ? @y ? int ? @z ? int ?
          
    select ? @x ? = ? 1 ? @y ? = ? 2 ? @z = 3 ?
          
    if ? @x ? > ? @y ?
          ?
    print ? ' x?>?y ' ? -- 打印字符串'x?>?y'?
           else ? if ? @y ? > ? @z ?
          ?
    print ? ' y?>?z ' ?
          
    else ? print ? ' z?>?y ' ?
          
    -- CASE?
           use ?pangu?
          
    update ?employee?
          
    set ?e_wage? = ?
          ?
    case ?
          ?
    when ?job_level? = ?’ 1 ’? then ?e_wage * 1.08 ?
          ?
    when ?job_level? = ?’ 2 ’? then ?e_wage * 1.07 ?
          ?
    when ?job_level? = ?’ 3 ’? then ?e_wage * 1.06 ?
          ?
    else ?e_wage * 1.05 ?
          ?
    end ?
          
    -- WHILE?CONTINUE?BREAK?
           declare ? @x ? int ? @y ? int ? @c ? int ?
          
    select ? @x ? = ? 1 ? @y = 1 ?
          
    while ? @x ? < ? 3 ?
          ?
    begin ?
          ?
    print ? @x ? -- 打印變量x?的值?
          ? while ? @y ? < ? 3 ?
          ?
    begin ?
          ?
    select ? @c ? = ? 100 * @x ? + ? @y ?
          ?
    print ? @c ? -- 打印變量c?的值?
          ? select ? @y ? = ? @y ? + ? 1 ?
          ?
    end ?
          ?
    select ? @x ? = ? @x ? + ? 1 ?
          ?
    select ? @y ? = ? 1 ?
          ?
    end ?
          
    -- WAITFOR?

      
    -- 例?等待1?小時(shí)2?分零3?秒后才執(zhí)行SELECT?語句?

      
    waitfor ?delay?’ 01 : 02 : 03 ’?
          
    select ? * ? from ?employee?

        
    -- 例?等到晚上11?點(diǎn)零8?分后才執(zhí)行SELECT?語句?

        
    waitfor ?time?’ 23 : 08 : 00 ’?


    SELECT   ?

      ?
    select ? * (列名)? from ?table_name(表名)? where ?column_name?operator?value?ex宿主)?
        ?
    select ? * ? from ?stock_information? where ?stockid? = ? str (nid)?
        ?stockname?
    = ? ' str_name ' ?
        ?stockname?
    like ? ' %?find?this?% ' ?
        ?stockname?
    like ? ' [a-zA-Z]% ' ? -- -------?([]指定值的范圍)?
        ?stockname? like ? ' [^F-M]% ' ? -- -------?(^排除指定范圍)?
        ? -- -------?只能在使用like關(guān)鍵字的where子句中使用通配符)?
        ? or ?stockpath? = ? ' stock_path ' ?
        ?
    or ?stocknumber? < ? 1000 ?
        ?
    and ?stockindex? = ? 24 ?
        ?
    not ?stocksex? = ? ' man ' ?
        ?stocknumber?
    between ? 20 ? and ? 100 ?
        ?stocknumber?
    in ( 10 , 20 , 30 )?
        ?
    order ? by ?stockid? desc ( asc )? -- -------?排序,desc-降序,asc-升序?
        ? order ? by ? 1 , 2 ? -- -------?by列號(hào)?
        ?stockname? = ?( select ?stockname? from ?stock_information? where ?stockid? = ? 4 )?
        ?
    -- -------?子查詢?
        ? -- -------?除非能確保內(nèi)層select只返回一個(gè)行的值?
        ? -- -------?否則應(yīng)在外層where子句中用一個(gè)in限定符?
        ? select ? distinct ?column_name?form?table_name?
      ?
    -- -------?distinct指定檢索獨(dú)有的列值,不重復(fù)?
        ? select ?stocknumber?,"stocknumber? + ? 10 "? = ?stocknumber? + ? 10 ? from ?table_name?
        ?
    select ?stockname?,?"stocknumber"? = ? count ( * )? from ?table_name? group ? by ?stockname?
        ?
    -- -------?group?by?將表按行分組,指定列中有相同的值?
        ? having ? count ( * )? = ? 2 ? -- -------?having選定指定的組?

      ?
    select ? * ?
        ?
    from ?table1,?table2?
    where ?table1.id? *= ?table2.id? -- ------?左外部連接,table1中有的而table2中沒有得以null表示?
        ?table1.id? =* ?table2.id? -- ------?右外部連接?
        ? select ?stockname? from ?table1?
        ?
    union ? [ all ] ? -- ------?union合并查詢結(jié)果集,all-保留重復(fù)行?
        ? select ?stockname? from ?table2 ?

      ?
    insert  ?

      ?
    insert ? into ?table_name?(Stock_name,Stock_number)?value?("xxx","xxxx"?
      ?value?(
    select ?Stockname?,?Stocknumber? from ?Stock_table2)?
      ?
    -- -----value為select語句  ?

      ?
    update   ?

      ?
    update ?table_name? set ?Stockname? = ?"xxx"? [ where?Stockid?=?3 ] ?
      ?Stockname?
    = ? default ?
      ?Stockname?
    = ? null ?
      ?Stocknumber?
    = ?Stockname? + ? 4   ?

      ?
    delete   ?

      ?
    delete ? from ?table_name? where ?Stockid? = ? 3 ?
      ?
    truncate ?table_name? -- -------?刪除表中所有行,仍保持表的完整性?
      ? drop ? table ?table_name? -- -------?完全刪除表 ?

      ?
    alter ? table ? -- ------?修改數(shù)據(jù)庫表結(jié)構(gòu)  ?

      ?
    alter ? table ? database .owner.table_name? add ?column_name? char ( 2 )? null ?..?
      ?sp_help?table_name?
    -- ------?顯示表已有特征?
      ? create ? table ?table_name?(name? char ( 20 ),?age? smallint ,?lname? varchar ( 30 ))?
      ?
    insert ? into ?table_name? select ? -- ------?實(shí)現(xiàn)刪除列的方法(創(chuàng)建新表)?
      ? alter ? table ?table_name? drop ? constraint ?Stockname_default?
      ?
    -- -------?刪除Stockname的default約束?




    常用函數(shù)(
    function )  ?

    ????轉(zhuǎn)換函數(shù)

    ????
    convert (數(shù)據(jù)類型,值,格式)

      統(tǒng)計(jì)函數(shù)?

      
    AVG ? -- 求平均值?
       COUNT ? -- 統(tǒng)計(jì)數(shù)目?
       MAX ? -- 求最大值?
       MIN ? -- 求最小值?
       SUM ? -- 求和 ?

      
    AVG ?

      
    use ?pangu?
      
    select ? avg (e_wage)? as ?dept_avgWage?
      
    from ?employee?
      
    group ? by ?dept_id  ?

      
    MAX ?

      
    -- 求工資最高的員工姓名?
       use ?pangu?
      
    select ?e_name?
      
    from ?employee?
      
    where ?e_wage? = ?
      ?(
    select ? max (e_wage)?
      ?
    from ?employee)  ?

      
    STDEV ()?

      
    -- STDEV()函數(shù)返回表達(dá)式中所有數(shù)據(jù)的標(biāo)準(zhǔn)差?
       -- STDEVP()?
       -- STDEVP()函數(shù)返回總體標(biāo)準(zhǔn)差  ?

      
    VAR ()?

      
    -- VAR()函數(shù)返回表達(dá)式中所有值的統(tǒng)計(jì)變異數(shù)  ?

      
    VARP ()?

      
    -- VARP()函數(shù)返回總體變異數(shù)  ?

      算術(shù)函數(shù)  ?

      三角函數(shù)?

      
    SIN (float_expression)? -- 返回以弧度表示的角的正弦?
       COS (float_expression)? -- 返回以弧度表示的角的余弦?
       TAN (float_expression)? -- 返回以弧度表示的角的正切?
       COT (float_expression)? -- 返回以弧度表示的角的余切?

      反三角函數(shù)?

      
    ASIN (float_expression)? -- 返回正弦是FLOAT?值的以弧度表示的角?
       ACOS (float_expression)? -- 返回余弦是FLOAT?值的以弧度表示的角?
       ATAN (float_expression)? -- 返回正切是FLOAT?值的以弧度表示的角?
      ATAN2(float_expression1,float_expression2)?
      ?
    -- ----返回正切是float_expression1?/float_expres-sion2的以弧度表示的角?
       DEGREES (numeric_expression)?
      ?
    -- ----把弧度轉(zhuǎn)換為角度返回與表達(dá)式相同的數(shù)據(jù)類型可為?
      ? -- ----INTEGER/MONEY/REAL/FLOAT?類型?
       RADIANS (numeric_expression)?
    -- ----把角度轉(zhuǎn)換為弧度返回與表達(dá)式相同的數(shù)據(jù)類型可為?

      ?
    -- ----INTEGER/MONEY/REAL/FLOAT?類型?
       EXP (float_expression)? -- 返回表達(dá)式的指數(shù)值?
       LOG (float_expression)? -- 返回表達(dá)式的自然對數(shù)值?
       LOG10 (float_expression) -- 返回表達(dá)式的以10?為底的對數(shù)值?
       SQRT (float_expression)? -- 返回表達(dá)式的平方根?

      取近似值函數(shù)?

      
    CEILING (numeric_expression)?
    -- -----返回>=表達(dá)式的最小整數(shù)返回的數(shù)據(jù)類型與表達(dá)式相同可為?
      ? -- -----INTEGER/MONEY/REAL/FLOAT?類型?
       FLOOR (numeric_expression)?
    -- -----返回<=表達(dá)式的最小整數(shù)返回的數(shù)據(jù)類型與表達(dá)式相同可為?
      ? -- -----INTEGER/MONEY/REAL/FLOAT?類型?
       ROUND (numeric_expression)?
    -- -----返回以integer_expression?為精度的四舍五入值返回的數(shù)據(jù)?
      ? -- -----類型與表達(dá)式相同可為INTEGER/MONEY/REAL/FLOAT?類型?
       ABS (numeric_expression)?
    -- -----返回表達(dá)式的絕對值返回的數(shù)據(jù)類型與表達(dá)式相同可為?
      ? -- -----INTEGER/MONEY/REAL/FLOAT?類型?
       SIGN (numeric_expression)?
    -- -----測試參數(shù)的正負(fù)號(hào)返回0?零值1?正數(shù)或-1?負(fù)數(shù)返回的數(shù)據(jù)類型?
      ? -- -----與表達(dá)式相同可為INTEGER/MONEY/REAL/FLOAT?類型?
       PI ()? -- -----返回值為π?即3.1415926535897936?
       RAND ( [ integer_expression ] )?
    -- -----用任選的[integer_expression]做種子值得出0-1?間的隨機(jī)浮點(diǎn)數(shù)


    字符串函數(shù)?

      
    ASCII ()? -- ----函數(shù)返回字符表達(dá)式最左端字符的ASCII?碼值?
       CHAR ()? -- ----函數(shù)用于將ASCII?碼轉(zhuǎn)換為字符?
      ? -- ----如果沒有輸入0?~?255?之間的ASCII?碼值CHAR?函數(shù)會(huì)返回一個(gè)NULL?值?
       LOWER ()? -- ----函數(shù)把字符串全部轉(zhuǎn)換為小寫?
       UPPER ()? -- ----函數(shù)把字符串全部轉(zhuǎn)換為大寫?
       STR ()? -- ----函數(shù)把數(shù)值型數(shù)據(jù)轉(zhuǎn)換為字符型數(shù)據(jù)?
       LTRIM ()? -- ----函數(shù)把字符串頭部的空格去掉?
       RTRIM ()? -- ----函數(shù)把字符串尾部的空格去掉?
       LEFT (), RIGHT (), SUBSTRING ()? -- 函數(shù)返回部分字符串?
       CHARINDEX (), PATINDEX ()? -- 函數(shù)返回字符串中某個(gè)指定的子串出現(xiàn)的開始位置?
       SOUNDEX ()? -- ----函數(shù)返回一個(gè)四位字符碼?
      ? -- ----SOUNDEX函數(shù)可用來查找聲音相似的字符串但SOUNDEX函數(shù)對數(shù)字和漢字均只返回0?值?
       DIFFERENCE ()? -- ----函數(shù)返回由SOUNDEX?函數(shù)返回的兩個(gè)字符表達(dá)式的值的差異?
      ? -- ----0?兩個(gè)SOUNDEX?函數(shù)返回值的第一個(gè)字符不同?
      ? -- ----1?兩個(gè)SOUNDEX?函數(shù)返回值的第一個(gè)字符相同?
      ? -- ----2?兩個(gè)SOUNDEX?函數(shù)返回值的第一二個(gè)字符相同?
      ? -- ----3?兩個(gè)SOUNDEX?函數(shù)返回值的第一二三個(gè)字符相同?
      ? -- ----4?兩個(gè)SOUNDEX?函數(shù)返回值完全相同同?
       QUOTENAME ()? -- ----函數(shù)返回被特定字符括起來的字符串?

      
    /* select?quotename('abc',?'{')?quotename('abc')?
      運(yùn)行結(jié)果如下?

      {?
      {abc}?[abc]
    */
    ?
      
    REPLICATE ()? -- ----函數(shù)返回一個(gè)重復(fù)character_expression?指定次數(shù)的字符串?
       /* select?replicate('abc',?3)?replicate(?'abc',?-2)?

      運(yùn)行結(jié)果如下?

      abcabcabc?NULL
    */
    ?
      
    REVERSE ()? -- ----函數(shù)將指定的字符串的字符排列順序顛倒?
       REPLACE ()? -- ----函數(shù)返回被替換了指定子串的字符串?
       /* select?replace('abc123g',?'123',?'def')?

      運(yùn)行結(jié)果如下?
      ?
      abcdefg
    */
      ?

      
    SPACE ()? -- ----函數(shù)返回一個(gè)有指定長度的空白字符串?
       STUFF ()? -- ----函數(shù)用另一子串替換字符串指定位置長度的子串  ?

      數(shù)據(jù)類型轉(zhuǎn)換函數(shù)?

      
    CAST ()?函數(shù)語法如下?
      
    CAST ()?(? AS ? [ ?length? ] )?
      
    CONVERT ()?函數(shù)語法如下?
      
    CONVERT ()?( [ ?length? ] ,? [ ,?style ] )?
      
    select ? cast ( 100 + 99 ? as ? char )? convert ( varchar ( 12 ),? getdate ())?

      運(yùn)行結(jié)果如下?
      
    199 ?Jan? 15 ? 2000  ?

      日期函數(shù)?

      
    DAY ()? -- ----函數(shù)返回date_expression?中的日期值?
       MONTH ()? -- ----函數(shù)返回date_expression?中的月份值?
       YEAR ()? -- ----函數(shù)返回date_expression?中的年份值?
       DATEADD (?,?,)?
      ?
    -- ---函數(shù)返回指定日期date?加上指定的額外日期間隔number?產(chǎn)生的新日期?
       DATEDIFF (?,?,)?
      ?
    -- ---函數(shù)返回兩個(gè)指定日期在datepart?方面的不同之處?

    注:本文轉(zhuǎn)自:http://www.lemongtree.com/286.html.aspx,特此說明

      
    DATENAME (?,?? -- ----函數(shù)以字符串的形式返回日期的指定部分?
       DATEPART (?,?? -- ----函數(shù)以整數(shù)值的形式返回日期的指定部分?
       GETDATE ()? -- ----函數(shù)以DATETIME?的缺省格式返回系統(tǒng)當(dāng)前的日期和時(shí)間  ?

      系統(tǒng)函數(shù)?

      
    APP_NAME ()? -- ----函數(shù)返回當(dāng)前執(zhí)行的應(yīng)用程序的名稱?
       COALESCE ()? -- ---函數(shù)返回眾多表達(dá)式中第一個(gè)非NULL?表達(dá)式的值?
       COL_LENGTH ( < ' table_name ' > ,? < ' column_name ' > ? -- --函數(shù)返回表中指定字段的長度值?
       COL_NAME (,?? -- --函數(shù)返回表中指定字段的名稱即列名?
       DATALENGTH ()? -- ---函數(shù)返回?cái)?shù)據(jù)表達(dá)式的數(shù)據(jù)的實(shí)際長度?
       DB_ID ( [ 'database_name' ] )? -- ----函數(shù)返回?cái)?shù)據(jù)庫的編號(hào)?
       DB_NAME (database_id)? -- ----函數(shù)返回?cái)?shù)據(jù)庫的名稱?
       HOST_ID ()? -- ---函數(shù)返回服務(wù)器端計(jì)算機(jī)的名稱?
       HOST_NAME ()? -- ---函數(shù)返回服務(wù)器端計(jì)算機(jī)的名稱?
       IDENTITY ( [ ,?seed?increment ] )? [ AS?column_name ] )?
      ?
    -- IDENTITY()?函數(shù)只在SELECT?INTO?語句中使用用于插入一個(gè)identity?column列到新表中?
       /* select?identity(int,?1,?1)?as?column_name?
      ?into?newtable?
      ?from?oldtable
    */
    ?

      
    ISDATE ()? -- --函數(shù)判斷所給定的表達(dá)式是否為合理日期?
       ISNULL (,?? -- 函數(shù)將表達(dá)式中的NULL?值用指定值替換?
       ISNUMERIC ()? -- --函數(shù)判斷所給定的表達(dá)式是否為合理的數(shù)值?
       NEWID ()? -- --函數(shù)返回一個(gè)UNIQUEIDENTIFIER?類型的數(shù)值?
       NULLIF (,??
      ?
    -- --NULLIF?函數(shù)在expression1?與expression2?相等時(shí)返回NULL?值若不相等時(shí)則返回xpression1?的值?



    posted on 2006-08-07 11:58 nbt 閱讀(436) 評論(0)  編輯  收藏 所屬分類: 數(shù)據(jù)庫技術(shù)

    <2006年8月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    導(dǎo)航

    統(tǒng)計(jì)

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    收藏夾

    Java技術(shù)網(wǎng)站

    友情鏈接

    國內(nèi)一些開源網(wǎng)站

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲AV日韩精品久久久久久久| 亚洲精品动漫在线| 亚洲乱码一二三四区麻豆| 成人午夜免费视频| 国产成人午夜精品免费视频| 中文字幕亚洲天堂| 国产亚洲一卡2卡3卡4卡新区| 久久A级毛片免费观看| 中文字幕不卡免费视频| 91香蕉视频免费| 亚洲AV中文无码乱人伦下载| 国产成人亚洲精品电影| 波多野结衣中文字幕免费视频| 亚洲日韩国产精品第一页一区| 美国毛片亚洲社区在线观看| 午夜国产精品免费观看| 亚洲AV无码久久精品蜜桃| jzzjzz免费观看大片免费| 在线视频免费国产成人| 国产精品亚洲αv天堂无码| 亚洲日本天堂在线| AV大片在线无码永久免费| 亚洲乱码中文字幕久久孕妇黑人| 精品特级一级毛片免费观看| 在线观看无码AV网站永久免费 | 亚洲精品综合久久| 亚洲AV女人18毛片水真多| 国产美女在线精品免费观看| 一区国严二区亚洲三区| 亚洲欧洲AV无码专区| 麻豆最新国产剧情AV原创免费 | 亚洲精品第五页中文字幕| 大地影院MV在线观看视频免费| 91精品成人免费国产片| 国产V亚洲V天堂A无码| 无码AV动漫精品一区二区免费| 国产免费观看网站| 亚洲成在人线在线播放无码| 无码国产精品久久一区免费| 亚洲国产精品成人久久久| 无遮挡免费一区二区三区 |