Jody

           

          在SQL中使用convert函數進行日期的查詢

          ???????? 曾經遇到這樣的情況,在數據庫的Meeting表中有PublishTime (DateTime,8)字段,用來存儲一個開會時間,在存入時由于要指明開會具體時間,故格式為yyyy-mm-dd hh:mm:ss,而我們查詢時是通過yyyy-mm-dd來進行的,即查詢某一天的所有會議信息,這樣如果通過select * from Meeting where PublishTime=@PublishTime (參數@PublishTime為yyyy-mm-dd格式)語句進行查詢將無法得到正確結果,比如我們要查詢2004年12月1日的會議信息,在輸入2004-12-01時就不能得到查詢結果,而這種查詢又不能要求輸入具體的hh:mm:ss.

          此時我們需要使用convert函數,它可以將一種數據類型的表達式轉換為另一種數據類型的表達式.此處我們先將數據庫內的datetime類型轉換為char類型,由于輸入的參數是10位的,所以寫成

          select * from Meeting where convert(varchar(10),PublishTime,121))=@PublishTime,這樣在查詢時數據庫得到參數后先自動將數據庫內的信息轉換為yyyy-mm-dd格式的10位字符,只要與參數相同即可返回查詢結果.而convert中的121是指將datetime類型轉換為char類型時獲得包括世紀位數的4位年份

          格式:
          CONVERT(data_type,expression[,style])

          說明:
          此樣式一般在時間類型(datetime,smalldatetime)與字符串類型(nchar,nvarchar,char,varchar)
          相互轉換的時候才用到.

          例子:
          Select CONVERT(varchar(30),getdate(),101) now
          結果為
          now
          ---------------------------------------
          09/15/2001

          /////////////////////////////////////////////////////////////////////////////////////

          style數字在轉換時間時的含義如下

          -------------------------------------------------------------------------------------------------
          Style(2位表示年份) | Style(4位表示年份) | 輸入輸出格式
          -------------------------------------------------------------------------------------------------
          - | 0 or 100 | mon dd yyyy hh:miAM(或PM)
          -------------------------------------------------------------------------------------------------
          1 | 101 | mm/dd/yy
          -------------------------------------------------------------------------------------------------
          2 | 102 | yy-mm-dd
          -------------------------------------------------------------------------------------------------
          3 | 103 | dd/mm/yy
          -------------------------------------------------------------------------------------------------
          4 | 104 | dd-mm-yy
          -------------------------------------------------------------------------------------------------
          5 | 105 | dd-mm-yy
          -------------------------------------------------------------------------------------------------
          6 | 106 | dd mon yy
          -------------------------------------------------------------------------------------------------
          7 | 107 | mon dd,yy
          -------------------------------------------------------------------------------------------------
          8 | 108 | hh:mm:ss
          -------------------------------------------------------------------------------------------------
          - | 9 or 109 | mon dd yyyy hh:mi:ss:mmmmAM(或PM)
          -------------------------------------------------------------------------------------------------
          10 | 110 | mm-dd-yy
          -------------------------------------------------------------------------------------------------
          11 | 111 | yy/mm/dd
          -------------------------------------------------------------------------------------------------
          12 | 112 | yymmdd
          -------------------------------------------------------------------------------------------------
          - | 13 or 113 | dd mon yyyy hh:mi:ss:mmm(24小時制)
          -------------------------------------------------------------------------------------------------
          14 | 114 | hh:mi:ss:mmm(24小時制)
          -------------------------------------------------------------------------------------------------
          - | 20 or 120 | yyyy-mm-dd hh:mi:ss(24小時制)
          -------------------------------------------------------------------------------------------------
          - | 21 or 121 | yyyy-mm-dd hh:mi:ss:mmm(24小時制)
          -------------------------------------------------------------------------------------------------



          以上是我在開發中遇到的小困難的總結,如果寫的有不正確的地方歡迎大家指教!

          posted on 2006-04-19 16:10 zhaofei1394 閱讀(387) 評論(0)  編輯  收藏 所屬分類: SQL Server

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 黔西| 临清市| 漠河县| 惠东县| 巨野县| 济源市| 贵港市| 卓尼县| 大兴区| 邹城市| 滕州市| 湘乡市| 嘉荫县| 西乌珠穆沁旗| 兴仁县| 安福县| 彰武县| 荣昌县| 高要市| 都昌县| 敖汉旗| 天全县| 缙云县| 宁明县| 翁牛特旗| 贵州省| 离岛区| 海兴县| 枣庄市| 始兴县| 绿春县| 滦平县| 松江区| 阜南县| 庆安县| 紫云| 兴海县| 钟山县| 新宁县| 宁波市| 巨野县|