国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

(續(xù)前)SQLServer常見問題應對

2024-07-21 02:11:28
字體:
供稿:網(wǎng)友

(續(xù)前)sqlserver常見問題應對































版權(quán)所有©ashuixu轉(zhuǎn)載請保持完整并注明出處































sql語句部分































5、“令人頭疼”的日期處理

問題:你是否也有過面對日期處理時的彷徨無措么?

解答:你是否了解以下事實(摘選自sqlserver2000聯(lián)機幫助-datetime 數(shù)據(jù)類型:概述):

















a.日期的存儲。



datetime

從 1753 年 1 月 1 日到 9999 年 12 月 31 日的日期和時間數(shù)據(jù),精確度為百分之三秒(等于 3.33 毫秒或 0.00333 秒)。如下表所示,把值調(diào)整到 .000、.003、或 .007 秒的增量。



smalldatetime

從 1900 年 1 月 1 日到 2079 年 6 月 6 日的日期和時間數(shù)據(jù)精確到分鐘。29.998 秒或更低的 smalldatetime 值向下舍入為最接近的分鐘,29.999 秒或更高的 smalldatetime 值向上舍入為最接近的分鐘。































microsoft sql server 用兩個 4 字節(jié)的整數(shù)內(nèi)部存儲 datetime 數(shù)據(jù)類型的值。第一個 4 字節(jié)存儲 base date(即 1900 年 1 月 1 日)之前或之后的天數(shù)。基礎日期是系統(tǒng)參考日期。不允許早于 1753 年 1 月 1 日的 datetime 值。另外一個 4 字節(jié)存儲以午夜后毫秒數(shù)所代表的每天的時間。































smalldatetime 數(shù)據(jù)類型存儲日期和每天的時間,但精確度低于 datetime。sql server 將 smalldatetime 的值存儲為兩個 2 字節(jié)的整數(shù)。第一個 2 字節(jié)存儲 1900 年 1 月 1 日后的天數(shù)。另外一個 2 字節(jié)存儲午夜后的分鐘數(shù)。日期范圍從1900 年 1 月 1 日到 2079 年 6 月 6 日,精確到分鐘。































b.沒有只存儲時間或日期的獨立的時間和日期數(shù)據(jù)類型。當設置 datetime 或 smalldatetime 值時,如果只指定時間,則日期默認為 1900 年 1 月 1 日。如果只指定日期,則時間默認為 12:00 am(午夜)。

















c.下面是一些使用日期和時間數(shù)據(jù)的準則:















· 若要對日期和時間進行精確搜索匹配,請使用等號(=)。microsoft sql server 以 12:00:00:000 am(默認值)的精確時間形式返回年、月、日都完全匹配的日期和時間值。



· 若要搜尋日期或時間的一部分,請使用 like 運算符。sql server 首先把數(shù)據(jù)轉(zhuǎn)換為 datetime 格式然后再轉(zhuǎn)換為 varchar 格式。由于標準時間顯示格式不包括秒和毫秒,不能使用 like 和匹配模式對其搜索,除非使用 convert 函數(shù)并把 style 參數(shù)設為 9 或 109。有關(guān)部分日期和時間搜索的更多信息,請參見 like。































· sql server 在運行時計算 datetime 常量。用于某種語言期望的日期格式的日期字符串,如果由使用不同語言和日期格式設置的連接來執(zhí)行查詢,則可能無法識別。例如,下面的視圖對于語言設置為美國英語的連接可以工作正常,但對于其它語言設置的連接就不能工作正常:















    create view usa_dates as

    select *

    from northwind.dbo.orders

    where orderdate < 'may 1, 1997'















當在查詢中使用 datetime 常量,而且該查詢由使用不同語言設置的連接執(zhí)行時,需確保日期對于所有語言設置均是可以接受的。對于國際數(shù)據(jù)庫中永久對象中的 datetime 常量,比如表約束和查看 where 子句,必須同樣小心。有關(guān)所有語言設置都解釋為相同的日期格式的更多信息,請參見編寫國際 transact-sql 語句。















sql server 可以識別以下列格式括在單引號 (') 中的日期和時間:















· 字母日期格式(例如,'april 15, 1998')















· 數(shù)字日期格式(例如,'4/15/1998'、'april 15,1998')















· 未分隔的字符串格式(例如'19981207'、'december 12, 1998')  















6、設計期無法確定的sql語句















問題:在寫存儲過程時,有些sql語句在設計期是不確定的,這樣的sql語句怎么寫呢?















解答:用系統(tǒng)存儲過程sp_executesql。































7、常用且重要函數(shù)、關(guān)鍵字和子句















a.case - 計算條件列表并返回多個可能結(jié)果表達式之一















b.isnull - 使用指定的替換值替換 null















c.having 子句 - 指定組或聚合的搜索條件。having 通常與 group by 子句一起使用。如果不使用 group by 子句,having 的行為與 where 子句一樣。














發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 苍溪县| 玛沁县| 板桥市| 叶城县| 靖远县| 洛川县| 资阳市| 田东县| 秦皇岛市| 松潘县| 黑龙江省| 新乡县| 元江| 永顺县| 敖汉旗| 双峰县| 鸡东县| 望谟县| 沂水县| 洮南市| 宁波市| 东乡| 信阳市| 承德县| 尼木县| 达州市| 忻州市| 安义县| 平陆县| 胶州市| 乃东县| 景东| 嘉义县| 收藏| 库车县| 定陶县| 孟连| 赣榆县| 堆龙德庆县| 荥经县| 大宁县|