c 中的datatime型別應用

2021-04-21 02:27:20 字數 2525 閱讀 8312

格式模式說明:這些模式是區分大小寫的;例如,識別「mm」,但不識別「mm」。

d 月中的某一天。一位數的日期沒有前導零。

dd 月中的某一天。一位數的日期有乙個前導零。

ddd 週中某天的縮寫名稱,在 abbreviateddaynames 中定義。

dddd 週中某天的完整名稱,在 daynames 中定義。

m 月份數字。一位數的月份沒有前導零。

mm 月份數字。一位數的月份有乙個前導零。

mmm 月份的縮寫名稱,在 abbreviatedmonthnames 中定義。

mmmm 月份的完整名稱,在 monthnames 中定義。

y 不包含紀元的年份。假如不包含紀元的年份小於 10,則顯示不具備前導零的年份。

yy 不包含紀元的年份。假如不包含紀元的年份小於 10,則顯示具備前導零的年份。

yyyy 包括紀元的四位數的年份。

gg 時期或紀元。假如要配置格式的日期不具備關聯的時期或紀元字串,則忽略該模式。

h 12 小時制的小時。一位數的小時數沒有前導零。

hh 12 小時制的小時。一位數的小時數有前導零。

h 24 小時制的小時。一位數的小時數沒有前導零。

hh 24 小時制的小時。一位數的小時數有前導零。

m 分鐘。一位數的分鐘數沒有前導零。

mm 分鐘。一位數的分鐘數有乙個前導零。

s 秒。一位數的秒數沒有前導零。

ss 秒。一位數的秒數有乙個前導零。

f 秒的小數精度為一位。其餘數字被截斷。

ff 秒的小數精度為兩位。其餘數字被截斷。

fff 秒的小數精度為三位。其餘數字被截斷。

ffff 秒的小數精度為四位。其餘數字被截斷。

fffff 秒的小數精度為五位。其餘數字被截斷。

ffffff 秒的小數精度為六位。其餘數字被截斷。

fffffff 秒的小數精度為七位。其餘數字被截斷。

t 在 amdesignator 或 pmdesignator 中定義的 am/pm 指示項的第乙個字元(假如存在)。

tt 在 amdesignator 或 pmdesignator 中定義的 am/pm 指示項(假如存在)。

z 時區偏移量(「 」或「-」後面僅跟小時)。一位數的小時數沒有前導零。例如,太平洋標準時間是「-8」。

zz 時區偏移量(「 」或「-」後面僅跟小時)。一位數的小時數有前導零。例如,太平洋標準時間是「-08」。

zzz 完整時區偏移量(「 」或「-」後面跟有小時和分鐘)。一位數的小時數和分鐘數有前導零。例如,太平洋標準時間是「-08:00」。

: 在 timeseparator 中定義的預設時間分隔符。

/ 在 dateseparator 中定義的預設日期分隔符。

% c 其中 c 是格式模式(假如單獨使用)。假如格式模式和原義字元或其他格式模式合併,則能夠省略「%」字元。

/ c 其中 c 是任意字元。照原義顯示字元。若要顯示反斜槓字元,請使用「//」。

如要得到「2023年06月」這樣格式的時間,能夠這樣寫:

date.tostring("yyyy年mm月", datetimeformatinfo.invariantinfo);

如果要得到「2008-09-24 0:00:00」這樣的格式標籤,能夠這樣寫:

date.tostring("yyyy-mm-dd");

在編寫sql語句時,對日期範圍的查詢,知識點有五:

1、單引號的使用;

2、between...and...

3、mssql中轉換函式convert;

4、tostring();格式化。

5、datepart(yy,getdate())-datepart(yy,inpatientinfo.birthday) as age--直接在sql語句中計算年齡

還有一種方法:在資料庫中增加乙個欄位age,然後在公式中寫入:(datepart(year,getdate()) - datepart(year,[birthday])),就會自動執行此命令,以免在頁面進行計算。

自己寫的比較長的sql語句:)

string strsql="select inpatientinfo.sickid,inpatientinfo.paname,inpatientinfo.***,datepart(yy,getdate())-datepart(yy,inpatientinfo.birthday) as age,";

strsql += " indeposit.indep,inpatientinfo.intimes,inpatientinfo.patype from inpatientinfo inner join indeposit on inpatientinfo.sickid=indeposit.sickid";

strsql += " where convert(varchar(10),inpatientinfo.intimes,120) between '" + st.tostring("yyyy-mm-dd") + "' and '" + et.tostring("yyyy-mm-dd") + "'";

mysql中針對datatime時間型別的注意點

前言 最近剛入職實習,檢視公司業務 時,發現一塊sql語句查詢結果不太理解的地方。1.問題 xml裡面sql語句查詢最新的工作日 select from t fundinfo gil tradingday where l if tradingday 1 and da tradingdate orde...

糾結我的乙個DataTime型別

因為這個原因 改錯,然後看了一些其他人的資料 引用 做乙個專案時,有個日期字段客戶可輸入可不輸入值,直接把datetime null時會出錯,提示錯誤 無法將 null 轉換成 system.datetime 因為它是一種值型別 在網上檢視下相關資料後,找到處理辦法 nullable now dat...

C 兩個DataTime型別資料比較大小

datatime t1 convert.todatatime 在此處加入日期 datatime t2 convert.todatatime 在此處加入日期 datatime.compare t1,t2 若datatime.compare t1,t2 結果 0,則有t1 t2 若datatime.co...