Bu fonksiyon, time bağımsız değişkenindeki günün ilk milisaniyesini içeren bir zaman damgasına karşılık gelen bir değer döndürür. Varsayılan çıktı biçimi kodda ayarlanan TimestampFormat olur.
Söz Dizimi:
DayStart(time[, [period_no[, day_start]])
Dönüş verileri türü: dual
Bağımsız Değişkenler
Bağımsız Değişken
Açıklama
time
Değerlendirilecek zaman damgası.
period_no
period_no tamsayıya çözümlenen bir ifade olup, burada 0 değeri time içeren günü belirtir. period_no içindeki negatif değerler önceki günleri; pozitif değerler ise sonraki günleri gösterir.
day_start
Günlerin geceyarısında başlamadığını belirtmek için, day_start içinde günün kesiri olarak bir uzaklık belirtin. Örneğin, saat 3:00'ü göstermek için 0,125.
Başka bir deyişle farkı oluşturmak için başlangıç saatini 24 saate bölün. Örneğin, günün saat 7:00'de başlaması için 7/24 kesrini kullanın.
Ne zaman kullanılır?
Genel olarak daystart() fonksiyonu, kullanıcının hesaplamada günün şu ana kadar geçen kısmını kullanmak istemesi durumunda, ifadenin içinde kullanılır. Örneğin, günün şu ana kadar geçen süresinde çalışanların kazandığı toplam ücreti hesaplamak için kullanılabilir.
Bu örnekler 'M/D/YYYY h:mm:ss[.fff] TT' zaman damgası formatını kullanmaktadır. Zaman damgası formatı, veri yükleme komut dosyanızın en üstündeki SET TimeStamp deyiminde belirtilir. Örneklerdeki biçimi gereksinimlerinize uyacak şekilde değiştirin.
Fonksiyon örnekleri
Örnek
Sonuç
daystart('01/25/2013 4:45:00 PM')
1/25/2013 12:00:00 AM döndürür.
daystart('1/25/2013 4:45:00 PM', -1)
1/24/2013 12:00:00 AM döndürür.
daystart('1/25/2013 16:45:00',0,0.5
)
1/25/2013 12:00:00 PM döndürür.
Bölgesel ayarlar
Aksi belirtilmedikçe bu konudaki örneklerde aşağıdaki tarih formatı kullanılır: AA/GG/YYYY. Tarih formatı, veri yükleme kodunuzda SET DateFormat deyiminde belirtilir. Varsayılan tarih formatı, bölgesel ayarlarınız ve diğer unsurlar nedeniyle sisteminizde farklı olabilir. Aşağıdaki örneklerdeki formatları ihtiyaçlarınıza uyacak şekilde değiştirebilirsiniz. Dilerseniz yükleme kodunuzdaki formatları aşağıdaki örneklere uyacak şekilde değiştirebilirsiniz.
Uygulamalardaki bölgesel ayarlarda Qlik Sense'in yüklü olduğu bilgisayarın veya sunucunun bölgesel sistem ayarları temel alınır. Eriştiğiniz Qlik Sense sunucusu İsveç olarak ayarlıysa, Veri yükleme düzenleyicisi tarihler, saat ve para birimi için İsveç bölgesel ayarlarını kullanır. Bu bölgesel format ayarları, Qlik Sense kullanıcı arayüzünde görüntülenen dil ayarlarıyla ilgili değildir. Qlik Sense, kullandığınız tarayıcıyla aynı dilde görüntülenir.
Örnek 1 - Basit örnek
Genel bakış
Veri yükleme düzenleyicisini açın ve aşağıdaki yükleme kodunu yeni bir sekmeye ekleyin.
Yükleme kodu şunları içerir:
Calendar adlı tabloya yüklenen bir tarih listesini içeren basit bir veri kümesi.
Varsayılan TimeStampFormat sistem değişkeni ((M/D/YYYY h:mm:ss[.fff] TT) kullanılır.
daystart() fonksiyonunu kullanarak SOD_timestamp adlı ek alanı oluşturan önceki bir yükleme.
Fonksiyona tarihten başka bir ek parametre girilmez.
Komut dosyası
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';
Calendar:
Load
date,
daystart(date) as SOD_timestamp
;
Load
date
Inline
[
date
03/11/2022 1:47:15 AM
03/12/2022 4:34:58 AM
03/13/2022 5:15:55 AM
03/14/2022 9:25:14 AM
03/15/2022 10:06:54 AM
03/16/2022 10:44:42 AM
03/17/2022 11:33:30 AM
03/18/2022 12:58:14 PM
03/19/2022 4:23:12 PM
03/20/2022 6:42:15 PM
03/21/2022 7:41:16 PM
];
Sonuçlar
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
date
SOD_timestamp
Sonuçlar tablosu
date
SOD_timestamp
03/11/2022 01:47:15
3/11/2022 00:00:00
03/12/2022 04:34:58
3/12/2022 00:00:00
03/13/2022 05:15:55
3/13/2022 00:00:00
03/14/2022 09:25:14
3/14/2022 00:00:00
03/15/2022 10:06:54
3/15/2022 00:00:00
03/16/2022 10:44:42
3/16/2022 00:00:00
03/17/2022 11:33:30
3/17/2022 00:00:00
03/18/2022 12:58:14
3/18/2022 00:00:00
03/19/2022 16:23:12
3/19/2022 00:00:00
03/20/2022 18:42:15
3/20/2022 00:00:00
03/21/2022 19:41:16
3/21/2022 00:00:00
Yukarıdaki tabloda da görülebileceği gibi, veri kümemizdeki her tarih için gün sonunun zaman damgası oluşturulur. Zaman damgası, TimestampFormat M/D/YYYY h:mm:ss[.fff] TT sistem değişkeninin formatındadır.
Örnek 2 – period_no
Genel bakış
Veri yükleme düzenleyicisini açın ve aşağıdaki yükleme kodunu yeni bir sekmeye ekleyin.
Yükleme kodu şunları içerir:
Park cezalarını içeren ve Fines adlı tabloya yüklenen veri kümesi. Veri kümesi şu alanları içerir:
id
due_date
number_plate
amount
daystart() fonksiyonunun kullanıldığı ve şu parametrelerin üçünün de sağlandığı önceki bir yükleme: time, period_no ve day_start. Bu önceki yükleme aşağıdaki iki yeni tarih alanını oluşturur:
Ödeme zamanından yedi gün önce başlayan early_repayment_period tarih alanı.
Ödeme zamanından 14 gün sonra başlayan late_penalty_period tarih alanı.
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
due_date
early_repayment_period
late_penalty_period
Sonuçlar tablosu
due_date
early_repayment_period
late_penalty_period
02/11/2022 9:25:14
2/4/2022 00:00:00
2/25/2022 00:00:00
03/25/2022 10:06:54
3/18/2022 00:00:00
4/8/2022 00:00:00
04/14/2022 10:44:42
4/7/2022 00:00:00
4/28/2022 00:00:00
06/28/2022 11:33:30
6/21/2022 00:00:00
7/12/2022 00:00:00
08/15/2022 12:58:14
8/8/2022 00:00:00
8/29/2022 00:00:00
11/16/2022 16:23:12
11/9/2022 00:00:00
11/30/2022 00:00:00
01/17/2023 18:42:15
1/10/2023 00:00:00
1/31/2023 00:00:00
03/22/2023 19:41:16
3/15/2023 00:00:00
4/5/2023 00:00:00
Yeni alanların değerleri TimestampFormat M/DD/YYYY tt formatındadır. daystart() fonksiyonu kullanıldığından, zaman damgası değerlerinin tümü günün ilk milisaniyesidir.
daystart() fonksiyonuna geçirilen ikinci bağımsız değişken negatif olduğundan, erken ödeme dönemi değerleri son tarihten önceki yedi gündür.
daystart() fonksiyonuna geçirilen ikinci bağımsız değişken pozitif olduğundan, geç ödeme dönemi değerleri son tarihten sonraki 14 gündür.
Örnek 3 – day_start
Genel bakış
Veri yükleme düzenleyicisini açın ve aşağıdaki yükleme kodunu yeni bir sekmeye ekleyin.
Yükleme kodu şunları içerir:
Önceki örnekle aynı veri kümesi ve senaryo.
Önceki örnekle aynı önceki yükleme.
Bu örnekte, iş gününü her gün sabah 7:00'da başlayacak ve bitecek şekilde ayarladık.
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
due_date
early_repayment_period
late_penalty_period
Sonuçlar tablosu
due_date
early_repayment_period
late_penalty_period
02/11/2022
2/3/2022 7:00:00
2/24/2022 7:00:00
03/25/2022
3/17/2022 7:00:00
4/7/2022 7:00:00
04/14/2022
4/6/2022 7:00:00
4/27/2022 7:00:00
06/28/2022
6/20/2022 7:00:00
7/11/2022 7:00:00
08/15/2022
8/7/2022 7:00:00
8/28/2022 7:00:00
11/16/2022
11/8/2022 7:00:00
11/29/2022 7:00:00
01/17/2023
1/9/2023 7:00:00
1/30/2023 7:00:00
03/22/2023
3/14/2023 7:00:00
4/4/2023 7:00:00
daystart() fonksiyonuna geçirilen day_start bağımsız değişkeninin değeri 7/24 olduğundan artık tarihlerde 7:00 zaman damgası vardır. Bu, günün başlangıcını saat 7:00 olarak ayarlar.
due_date alanında zaman damgası olmadığından 00:00 olarak kabul edilir ve günler sabah 7:00'da başladığı ve bittiği için bu saat önceki güne aittir. Bu nedenle, 11 Şubat olan ceza ödeme zamanı için erken ödeme dönemi 3 Şubat sabah 7:00'da başlar.
Örnek 4 – Grafik nesnesi örneği
Genel bakış
Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir sekmeye ekleyin.
Bu örnekte, önceki örnekle aynı veri kümesi ve senaryo kullanılır.
Bununla birlikte, yalnızca grafik nesnesinde hesaplanan iki ek son tarih değerinin yer aldığı orijinal Fines tablosu yüklenir.
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanı boyut olarak ekleyin: due_date.
early_repayment_period alanını oluşturmak için aşağıdaki hesaplamayı oluşturun:
=daystart(due_date,-7,7/24)
late_penalty_period alanını oluşturmak için aşağıdaki hesaplamayı oluşturun:
=daystart(due_date,14,7/24)
Sonuçlar tablosu
due_date
=daystart(due_date,-7,7/24)
=daystart(due_date,14,7/24)
02/11/2022 9:25:14
2/4/2022 7:00:00
2/25/2022 7:00:00
03/25/2022 10:06:54
3/18/2022 7:00:00
4/8/2022 7:00:00
04/14/2022 10:44:42
4/7/2022 7:00:00
4/28/2022 7:00:00
06/28/2022 11:33:30
6/21/2022 7:00:00
7/12/2022 7:00:00
08/15/2022 12:58:14
8/8/2022 7:00:00
8/29/2022 7:00:00
11/16/2022 16:23:12
11/9/2022 7:00:00
11/30/2022 7:00:00
01/17/2023 18:42:15
1/10/2023 7:00:00
1/31/2023 7:00:00
03/22/2023 19:41:16
3/15/2023 7:00:00
4/5/2023 7:00:00
Yeni alanların değerleri TimestampFormat M/D/YYYY h:mm:ss[.fff] TT formatındadır. daystart() fonksiyonu kullanıldığından, zaman damgası değerleri günün ilk milisaniyesine karşılık gelir.
daystart() fonksiyonuna geçirilen ikinci bağımsız değişken negatif olduğundan, erken ödeme dönemi değerleri son tarihten önceki yedi gündür.
daystart() fonksiyonuna geçirilen ikinci bağımsız değişken pozitif olduğundan, geç ödeme dönemi değerleri son tarihten sonraki 14 gündür.
daystart() fonksiyonuna geçirilen üçüncü bağımsız değişken (day_start) 7/24 olduğundan, tarihlerde 7:00 zaman damgası vardır.
Bu sayfa size yardımcı oldu mu?
Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız, bize bildirin, düzeltelim!