欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

SPL的日期時間函數(shù)

在數(shù)據(jù)分析計算中,日期時間類數(shù)據(jù)是比較特殊的類型,這里我們就來研究一下如何在SPL中使用日期時間類數(shù)據(jù)。

專業(yè)成都網(wǎng)站建設(shè)公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來客戶和效益!創(chuàng)新互聯(lián)為您提供成都網(wǎng)站建設(shè),五站合一網(wǎng)站設(shè)計制作,服務(wù)好的網(wǎng)站設(shè)計公司,做網(wǎng)站、網(wǎng)站制作負責(zé)任的成都網(wǎng)站制作公司!

1日期時間數(shù)據(jù)的轉(zhuǎn)換和生成

日期時間類數(shù)據(jù),通常會用字符串來輸入或顯示。在使用集算器時,可以點擊Tool>Option,在選項配置的Environment頁面中,設(shè)定日期時間類型數(shù)據(jù)所使用的默認格式,如:

SPL 的日期時間函數(shù)

使用SPL時,日期時間類型的數(shù)據(jù)會按照默認的格式顯示出來,如:


A
1=now()

運行后查看A1中的結(jié)果如下:

SPL 的日期時間函數(shù)

這里用到的函數(shù)now() 是日期時間計算中比較常用的函數(shù),可以獲得系統(tǒng)中當前的日期時間。日期時間的顯示在不同的語言環(huán)境中是不同的,特別是月份和星期等數(shù)據(jù),下面都將以英文版的格式為例加以說明。

當需要輸入日期時間類型的常數(shù)時,也可以直接按照格式輸入字符串,此時SPL會自動將數(shù)據(jù)解析為日期時間數(shù)據(jù),如:


ABC
12019-2-112:45:302019-02-01 10:30:00

A1,B1和C1會分別被解析為日期類型、日期時間類型和時間類型數(shù)據(jù),如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

SPL可以把直接輸入的常數(shù)解析為日期時間類型,但對于已經(jīng)是字符串類型的,就需要用date(),time() 或者datetime() 將字符串轉(zhuǎn)換為日期、時間或者日期時間數(shù)據(jù),如:


ABC
12019220
2=A1/"-"/B1/"-"/C1=12/":"/22/":00"=A2+" "+B2
3=ifdate(A2)=iftime(B2)=ifdate(C2)
4=date(A2)=time(B2)=datetime(C2)
5=ifdate(A4)=iftime(B4)=ifdate(C4)

A2,B2和C2中是通過字符串運算得到的字符串:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

第3行用ifdate() 和iftime() 函數(shù)判斷第2行的數(shù)據(jù)是否已被處理為日期或者時間類型(注意:判斷日期類型和日期時間類型的數(shù)據(jù),都使用ifdate()),A3,B3和C3中的結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

從結(jié)果可以看出,第2行中單元格值都不是日期或時間類數(shù)據(jù),實際上都是字符串,顯示也都和日期時間不同。

在第4行中,將字符串按照對應(yīng)的格式分別轉(zhuǎn)換為日期時間數(shù)據(jù),結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

在第5行判斷第4行的數(shù)據(jù)是否已被處理為日期或者時間類型,結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

?

當使用外部數(shù)據(jù)時,有時需要處理不同格式的日期時間數(shù)據(jù),這時可以在使用date(),time() 或者datetime() 時,在字符串后添加使用的顯示格式串,如:


ABC
1Feb 2, 2019'2:30:45 PM'2019-6-20 2:30:45 PM
2MMM d,yyyyh?s ayyyy-M-d h?s a
3=date(A1,A2)=time(B1,B2)=datetime(C1,C2)

在第1行中的數(shù)據(jù)都并沒有用默認的日期時間格式,而且B1和C1都在前面添加了 ' 字符表示使用字符串常數(shù),A1,B1和C1中的數(shù)據(jù)如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

需要注意的是,月份格式MMM的設(shè)定是和語言環(huán)境相關(guān)的,英文環(huán)境中表示月份的英文縮寫,如Feb;而中文環(huán)境中則會顯示為中文月份。

第2行中列出的格式串指示SPL如何解析第1行中的數(shù)據(jù),第3行使用這些格式串進行轉(zhuǎn)換,結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

完成類型轉(zhuǎn)換后,查看結(jié)果時仍然會用默認的格式顯示。如果要用其他格式顯示,可以用string(d,fmt)函數(shù),將日期時間類數(shù)據(jù)轉(zhuǎn)換為指定格式的字符串,如:


ABC
12019-02-2112:45:302019-12-01 10:30:00
2MMMM d,yyyyh?s aMMM d,yyyy h?s a
3=string(A1,A2)=string(B1,B2)=string(C1,C2)

A3,B3和C3中,將日期時間類數(shù)據(jù)轉(zhuǎn)換為指定格式的字符串:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

當然,也可以根據(jù)需要直接修改默認的日期時間顯示格式。

?

在用date(),time() 或者datetime() 生成數(shù)據(jù)類型時,還可以直接依次指定年,月,日,時,分,秒等各個分量:


ABC
1=date(2019,2,21)=time(13,5,0)=datetime(2019,12,29,13,5,0)

結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

在指定各個分量時,要注意每個整數(shù)的合理范圍,例如小時分量在0~23之間。

2日期時間數(shù)據(jù)的顯示格式


ABC
1=date(201906,29)=time(13:5:18)=datetime(A1,B1)

這個例子中,A1中用date()生成日期,第一個參數(shù)使用了6位數(shù),SPL將用其同時表示年和月。而C1則將A1中的日期和B1中的時間合并得到日期時間數(shù)據(jù),結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

上一節(jié)已經(jīng)使用到了日期時間數(shù)據(jù)的一些顯示格式,用格式字符串來指定顯示樣式,例如yyyy表示4位數(shù)的年份、dd表示2位數(shù)的日期等。下面將具體說明格式串中各個字符的作用,并以C1中的數(shù)據(jù)為例顯示相應(yīng)的格式化結(jié)果:

字符作用SPL結(jié)果
y/yy年,兩位數(shù)字=string(C1,"yy")SPL 的日期時間函數(shù)
yyyy年,四位數(shù)字=string(C1,"yyyy")SPL 的日期時間函數(shù)
M=string(C1,"M")SPL 的日期時間函數(shù)
MM月,兩位數(shù)字,不足用0補齊=string(C1,"MM")SPL 的日期時間函數(shù)
MMM月,英文簡寫=string(C1,"MMM")SPL 的日期時間函數(shù)
MMMM月,英文全拼=string(C1,"MMMM")SPL 的日期時間函數(shù)
d=string(C1,"d")SPL 的日期時間函數(shù)
dd日,兩位數(shù)字,不足用0補齊=string(C1,"dd")SPL 的日期時間函數(shù)
E星期,英文簡寫=string(C1,"E")SPL 的日期時間函數(shù)
EEEE星期,英文全拼=string(C1,"EEEE")SPL 的日期時間函數(shù)
GEra標識符,公元前/公元后,縮寫=string(C1,"G")SPL 的日期時間函數(shù)
w本年的第幾周=string(C1,"w")SPL 的日期時間函數(shù)
ww本年的第幾周,兩位數(shù)字,不足用0補齊=string(C1,"ww")SPL 的日期時間函數(shù)
W本月的第幾周=string(C1,"W")SPL 的日期時間函數(shù)
F在本月的第幾周,僅根據(jù)日計算=string(C1,"F")SPL 的日期時間函數(shù)
D本年的第幾天=string(C1,"D")SPL 的日期時間函數(shù)
H小時,24小時制,0~23=string(C1,"H")SPL 的日期時間函數(shù)
HH小時,24小時制,0~23,兩位數(shù)字,不足用0補齊=string(C1,"HH")SPL 的日期時間函數(shù)
k小時,24小時制,1~24=string(C1,"k")SPL 的日期時間函數(shù)
kk小時,24小時制,1~24,兩位數(shù)字,不足用0補齊=string(C1,"kk")SPL 的日期時間函數(shù)
h小時,12小時制,1~12=string(C1,"h")SPL 的日期時間函數(shù)
hh小時,12小時制,1~12,兩位數(shù)字,不足用0補齊=string(C1,"hh")SPL 的日期時間函數(shù)
K小時,12小時制,0~11=string(C1,"K")SPL 的日期時間函數(shù)
KK小時,12小時制,0~11,兩位數(shù)字,不足用0補齊=string(C1,"KK")SPL 的日期時間函數(shù)
m分鐘=string(C1,"m")SPL 的日期時間函數(shù)
mm分鐘,兩位數(shù)字,不足用0補齊=string(C1,"mm")SPL 的日期時間函數(shù)
s=string(C1,"s")SPL 的日期時間函數(shù)
ss秒,兩位數(shù)字,不足用0補齊=string(C1,"ss")SPL 的日期時間函數(shù)
S毫秒=string(C1,"S")SPL 的日期時間函數(shù)
a上午/下午=string(C1,"a")SPL 的日期時間函數(shù)
z時區(qū),縮寫=string(C1,"z")SPL 的日期時間函數(shù)
zzzz時區(qū),全拼=string(C1,"zzzz")SPL 的日期時間函數(shù)
Z時區(qū)代碼=string(C1,"Z")SPL 的日期時間函數(shù)

?

3從日期時間數(shù)據(jù)中獲取信息

在日期時間等類型的數(shù)據(jù)中,具體的年,月,日,時,分,秒等常常是處理時需要單獨使用的信息,我們可以通過year(),month(),day(),hour(),minute(),second(),millisecond()等函數(shù)獲得這些日期時間數(shù)據(jù)中的各個分量:


ABC
12019-6-3012:45:30.230=now()
2=year(A1)=month(A1)=day(A1)
3=hour(B1)=minute(B1)=second(B1)
4=month(C1)=hour(C1)=millisecond(C1)

A1,B1和C1中的日期時間數(shù)據(jù)如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

A2,B2和C2從日期數(shù)據(jù)中分別獲取年、月、日:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

A3,B3和C3從時間數(shù)據(jù)中獲取時、分、秒:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

A4,B4和C4從now() 函數(shù)的日期時間類型結(jié)果中獲取月,小時和毫秒分量:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

從結(jié)果中可以看到,now() 函數(shù)返回的結(jié)果會精確到毫秒,但顯示時只會顯示到秒。在使用now() 函數(shù)時,可以通過添加選項的方法來改變結(jié)果的精度。如:


ABC
1=now@d()=now@t()
2=now@m()=now@s()=millisecond(B2)

A1中添加@d選項,只取日期部分數(shù)據(jù),B1中添加@t選項,只取時間部分數(shù)據(jù),結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

A2中添加@m選項,數(shù)據(jù)將精確到分,B2中添加@s選項,獲得的數(shù)據(jù)將精確到秒,結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

在C2中可以看到,B2中的數(shù)據(jù)毫秒分量為0:

SPL 的日期時間函數(shù)

@m和@s選項,也可以用在datetime() 和time() 函數(shù)中,設(shè)定轉(zhuǎn)換日期時間數(shù)據(jù)及時間數(shù)據(jù)時的精度為分或秒。

?

在日期類型數(shù)據(jù)中,也可以獲取到時間分量,從時間類型數(shù)據(jù)中也可以獲取日期分量,如:


ABC
12019-6-3019:05:10.866
2=hour(A1)=minute(A1)=second(A1)
3=month@y(B1)=day(B1)

A2,B2和C2中結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

也就是說,單獨的日期數(shù)據(jù),其中的時間指定為00:00:00。

A3中的month函數(shù)添加了@y選項,獲得年月組成的6位數(shù),A3和B3中結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

也就是說,單獨的時間數(shù)據(jù),其中的日期為1970年1月1日。

?

除了直接從日期時間類型的數(shù)據(jù)中獲取各個分量,還有一些函數(shù)可以用來獲得日期相關(guān)的數(shù)據(jù)。

?

使用day@w(),在獲取日期分量時添加@w選項,可以獲得本日是一周中的第幾天:


ABC
12019-4-32019-6-182020-2-20
2=day@w(A1)=day@w(B1)=day@w(C1)
3=string(A1,"EEEE")=string(B1,"EEEE")=string(C1,"EEEE")

A2,B2和C2獲取各個日期分別是一周中的第幾天,結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

SPL中,每周的第1天是從周日開始計算的,在第3行中用顯示字符串的方式取得了每一天是星期幾:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

?

另外,我們還可以使用pdate() 函數(shù),配合不同的選項獲得日期


ABC
12019-8-17

2=pdate@w(A1)=pdate@m(A1)=pdate@q(A1)
3=pdate@we(A1)=pdate@me(A1)=pdate@qe(A1)

在pdate() 函數(shù)中:

○?? 直接使用@w選項可以獲得本周第1天的日期,從周日開始計算;

○?? 添加@m選項可以獲得本月第1天的日期;

○?? 添加@q選項可以獲得本季度第1天的日期;

○?? 添加@e則可以獲得某個時間段最后一天的數(shù)據(jù),如本周最后一天,本季度最后一天等。A2,B2,C2,A3,B3和C3中的結(jié)果依次如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

?

SPL中還可以使用days() 函數(shù)計算某日期所在月的總天數(shù),添加@q選項可以得到所在季度的總天數(shù),添加@y選項可以得到整年的總天數(shù),如:


ABC
12019-02-21

2=days(A1)=days@q(A1)=days@y(A1)

A2,B2和C2中的結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

4使用日期時間數(shù)據(jù)的計算

除了直接從日期時間數(shù)據(jù)中獲取信息,在SPL中還可以使用日期時間類數(shù)據(jù)來執(zhí)行各類計算。

最常用的有關(guān)日期的計算就是計算年齡:


ABC
11995-3-30=now@d()
2=age(A1)=age@m(A1)=age@y(A1)

A1和B1中的數(shù)據(jù)如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

在第2行用age() 函數(shù),根據(jù)A1中的生日來計算年齡,計算年齡時,是以當前的日期為準的,默認情況將精確到日,添加@m可以將精度設(shè)為月,添加@y可以將精度設(shè)定為年。在不同精度的情況下,計算所得的年齡可能會有區(qū)別,A2,B2和C2中得到的年齡分別如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

?

使用age() 函數(shù),類似于計算生日日期和當前日期間隔的年數(shù)。更普遍的計算時間間隔的函數(shù)是interval() 函數(shù),用這個函數(shù)可以計算兩個日期時間數(shù)據(jù)之間相差多少天,添加@y,@q,@m,@s,@ms等選項,可以計算間隔多少年,季度,月,秒或毫秒。例如:


ABC
11995-4-302019-4-10
2=interval(A1,B1)=interval@y(A1,B1)=B1-A1

如果只需要計算兩個日期之間相差多少天,也可以直接用減法完成,A2,B2和C2中的結(jié)果如下:

SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)SPL 的日期時間函數(shù)

特別的,每個日期時間數(shù)據(jù)都可以轉(zhuǎn)換為一個對應(yīng)的長整數(shù),這個長整數(shù)其實就是指定的日期時間和1970年1月1日,格林威治時間0:00:00的間隔毫秒數(shù),如:


      • AB
        1=datetime("1/1/1970 0:00:00 ? GMT","m/d/yyyy H

        網(wǎng)頁題目:SPL的日期時間函數(shù)
        網(wǎng)站鏈接:http://chinadenli.net/article16/ppsogg.html

        成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、網(wǎng)站收錄網(wǎng)站導(dǎo)航品牌網(wǎng)站制作、自適應(yīng)網(wǎng)站企業(yè)網(wǎng)站制作

        廣告

        聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

        亚洲日本中文字幕视频在线观看| 国产麻豆一区二区三区在| 中国一区二区三区不卡| 亚洲欧洲一区二区中文字幕| 日韩人妻精品免费一区二区三区| 日韩欧美一区二区不卡看片| 在线观看免费视频你懂的| 成人午夜在线视频观看| 亚洲一区二区三区一区| 午夜福利激情性生活免费视频| 国产日本欧美特黄在线观看| 亚洲中文字幕有码在线观看| 国产一区一一一区麻豆| 日韩少妇人妻中文字幕| 国产福利一区二区久久| 国产精品成人免费精品自在线观看| 91亚洲精品综合久久| 亚洲欧美日韩国产自拍| 欧美在线观看视频三区| 欧美精品中文字幕亚洲| 国产又粗又猛又爽色噜噜| 在线免费国产一区二区| 午夜国产福利在线播放| 99福利一区二区视频| 男女一进一出午夜视频| 国产又猛又黄又粗又爽无遮挡| 欧美中文字幕日韩精品| 欧洲亚洲精品自拍偷拍| 免费观看一区二区三区黄片| 久久精视频免费视频观看| 亚洲乱码av中文一区二区三区| 九九九热视频最新在线| 精品香蕉一区二区在线| 国产精品亚洲一区二区| 国产精品一区日韩欧美| 国产又黄又爽又粗视频在线| 国产成人精品久久二区二区| 亚洲国产一区精品一区二区三区色 | 91日韩在线视频观看| 日韩在线视频精品中文字幕| 男女激情视频在线免费观看|