DATEPART (Transact-SQL)
Belirtilen gösteren bir tamsayý döndürür datepart Belirtilen date.
Tüm genel bakış için Transact-SQL Tarih ve saat veri türü ve işlevler, bkz: Tarih ve saat veri türleri ve işlevler (Transact-SQL). Bilgi ve tarih ve saat veri türü ve işlevleri için ortak olan bir örnek için bkz: Tarih ve saat veri kullanma.
DATEPART ( datepart , date )
Bağımsız değişkenler
datepart
Bir parçasıdır date (bir tarih veya saat değeri), bir integer döndürülür. Aşağıdaki tablo, geçerli listeler. datepart bağımsız değişkenler için. Kullanıcı tanımlı değişken eşdeğerleri, geçerli değil.datepart
Kısaltmaları
year
yy, yyyy
quarter
qq, q
month
mm, m
dayofyear
dy, y
day
dd, d
week
wk, ww
weekday
dw
hour
hh
minute
mi, n
second
ss, s
millisecond
ms
microsecond
mcs
nanosecond
ns
TZoffset
tz
ISO_WEEK
isowk, isoww
date
Is an expression that can be resolved to a time, date, smalldatetime, datetime, datetime2, or datetimeoffset value.date can be an expression, column expression, user-defined variable, or string literal.Belirsizlik önlemek için , dört basamaklı yıl kullanın.Iki basamaklı yılları hakkında daha fazla bilgi için bkz: iki haneli yıl kesme seçenek.
Dönüş Türü
int
Return Value
Her datepart ve kendi kısaltmaları aynı değeri.
Dönüş değeri kullanarak dil ortamı bağlıdır küme DİLİ tarafındanvarsayılan dil oturum açma.If date bir dize literal bazı biçimleri için dönüş değeri kullanılarak belirtilen biçimde bağlıdır küme dateformat.Bir sütun ifadesi bir tarih veya saat veri türü tarih ise, küme DATEFORMAT dönüş değeri etkilemez.
Aşağıdaki tablo tüm listeler datepart deyim için karşılık gelen bir dönüş değerleri olan bağımsız değişkenler SELECT DATEPART(datepart,'2007-10-30 12:15:32.1234567 +05:10'). Veri türü date bağımsız değişken datetimeoffset(7). The nanoseconddatepart return value has a scale of 9 (.123456700) and the last two positions are always 00.
datepart |
Dönüş değeri |
---|---|
year, yyyy, yy |
2007 |
quarter, qq, q |
4 |
month, mm, m |
10 |
dayofyear, dy, y |
303 |
day, dd, d |
30 |
week, wk, ww |
45 |
weekday, dw |
1 |
hour, hh |
12 |
minute, n |
15 |
second, ss, s |
32 |
millisecond, ms |
123 |
microsecond, mcs |
123456 |
nanosecond, ns |
123456700 |
TZoffset, tz |
310 |
Hafta içi günü ve hafta datepart bağımsız değişkenleri
Ne zaman datepart olan week (wk, ww) veya weekday (dw), dönüş değeri kullanılarak ayarlanan değere bağlıdır küme datefirst.
January 1 of any year defines the starting number for the weekdatepart, for example: DATEPART (wk, ' Oca 1 xxxx ') = 1, burada xxxx herhangi bir yıl ' dir.
The following table lists the return value for week and weekdaydatepart for '2007-04-21 ' for each SET DATEFIRST argument.1 Ocak 2007 yılındaki bir Pazar ise.Nisan 21 2007 yılı bir Cumartesi Günü Saat olur.küme DATEFIRST 7, Pazar ABD için varsayılan değerdir.Ingilizce.
küme datefirst bağımsız değişken |
Hafta döndürüldü |
Haftanın günü döndürüldü |
---|---|---|
1 |
16 |
6 |
2 |
17 |
5 |
3 |
17 |
4 |
4 |
17 |
3 |
5 |
17 |
2 |
6 |
17 |
1 |
7 |
16 |
7 |
Yıl, ay ve gün datepart bağımsız değişkenleri
DATEPART (için döndürülen değerleryear, date), datepart ()month, date) ve DATEPART ()day, date) işlevleri tarafından döndürülen alanındakiyle aynı olur. YIL, AY, and GÜNÜ, f sırasıyla.
ISO_WEEK datepart
ISO 8601 ISO hafta-tarih sistemini (bir hafta numaralandırma sistemi içerir.Her haftanın Perşembe gerçekleştiği yılı ile ilişkilidir.Örneğin, 2004 (2004W01) 1 haftası Pazartesi günü 29 Aralık 2003'ten Pazar 4 Ocak 2004 için çalıştırıldı.En yüksek bir yıldaki hafta numarasını, 52 veya 53 olabilir.Bu stil numaralandırma genellikle Avrupa ülkede ancak nadiren başka bir yerde kullanılır.
Farklı ülkelerde numaralandırma sistemini standart ISO ile uyumlu.En az altı olasılık vardır aşağıdaki gösterildiği gibi tablo
Haftanın ilk günü |
Yılın ilk haftası içerir. |
Iki kez atanan hafta |
Olarak/kullanılır |
---|---|---|---|
Pazar |
1 Ocak, Ilk Cumartesi, yılın 1–7 günler |
Evet |
Amerika Birleşik Devletleri |
Pazartesi |
1 Ocak, Ilk Pazar günü yılın 1–7 günler |
Evet |
Çoğu Avrupa ve Birleşik Krallık |
Pazartesi |
4 Ocak, Ilk Perşembe yılın 4–7 günler |
Hayır |
ISO 8601, Norveç ve Isveç |
Pazartesi |
7 Ocak, Ilk Pazartesi günü Yıl, 7 gün |
Hayır |
|
Çarşamba |
1 Ocak, Ilk Salı yılın 1–7 günler |
Evet |
|
Cumartesi |
1 Ocak, Ilk Cuma yılın 1–7 günler |
Evet |
TZoffset
The TZoffset (tz) is returned as the number of minutes (signed).Aşağıdaki deyim, bir saat dilimi uzaklığı 310 dakika döndürür.
SELECT DATEPART (TZoffset, 2007-05-10 00:00:01.1234567 +05:10);
If the datepart argument is TZoffset (tz) and the date argument is not of datetimeoffset data type, NULL is returned.
Bir datepart that ıs Not tarihteki bağımsız değişken için varsayılan iade
Veri türü, date Belirtilen bağımsız değişken sahip değil datepart, varsayılan değer, datepart döndürülür.
Örneğin, varsayılan yıl-ay-gün herhangi date 1900-01-01 veri türüdür. Aşağıdaki ifadeyi tarih bölümü bağımsız değişkenler için vardır. datepart, saat bağımsız değişkeni için dateverir 1900, 1, 1, 1, 2.
SELECT DATEPART(year, '12:10:30.123')
,DATEPART(month, '12:10:30.123')
,DATEPART(day, '12:10:30.123')
,DATEPART(dayofyear, '12:10:30.123')
,DATEPART(weekday, '12:10:30.123');
Varsayılan saat-dakika-saniye time veri türü 00: 00: 00'dır. Aşağıdaki ifadeyi saat bölümü bağımsız değişkenler için vardır. datepart, bir tarih bağımsız değişkeni dateverir 0, 0, 0.
SELECT DATEPART(hour, '2007-06-01')
,DATEPART(minute, '2007-06-01')
,DATEPART(second, '2007-06-01');
Kesirli saniye
Kesirli saniye, aşağıdaki tablolarda gösterildiği gibi döndürülür:
SELECT DATEPART(millisecond, '00:00:01.1234567'); -- Returns 123
SELECT DATEPART(microsecond, '00:00:01.1234567'); -- Returns 123456
SELECT DATEPART(nanosecond, '00:00:01.1234567'); -- Returns 123456700
Remarks
DATEPART seçme listesinde kullanılan WHERE, HAVING, BY ve ORDER BY yan tümceleri GRUPLANDıRMAK.
Örnekler
Aşağıdaki örnek, temel yılı verir.Tarih hesaplamalarında temel yıl yararlıdır.Bu örnekte, tarih sayı olarak belirtildi.Dikkat SQL Server 0, 1 Ocak 1900 ' yorumlar.
SELECT DATEPART(year, 0), DATEPART(month, 0), DATEPART(day, 0);
-- Returns: 1900 1 1 */