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)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 信宜市| 文化| 天峻县| 桑日县| 花垣县| 河西区| 石家庄市| 茌平县| 嘉荫县| 怀宁县| 柳林县| 三台县| 安义县| 根河市| 镇原县| 神农架林区| 和田县| 沙洋县| 洛南县| 沂源县| 静宁县| 乌拉特后旗| 通海县| 盐山县| 商河县| 怀化市| 泾阳县| 陇南市| 盘山县| 塔河县| 丹棱县| 扶绥县| 水富县| 黑水县| 台江县| 新蔡县| 会同县| 高邮市| 汉沽区| 南江县| 信宜市|