Now
now
, Patrona rapor saat diliminizi kullanarak geçerli tarih ve saati döndürür.
Geçerli tarih veya saati kullanarak koşullu mantık oluşturma
Diyelim ki bazı proje verileriniz var ve her görev için bir durum sütunu eklemek istiyorsunuz. Bugünkü tarih ve saatin 22 Kasım 2022, 12:00:00 olduğunu varsayalım.
Görev | Başlangıç | Son Tarih | Durum |
---|---|---|---|
Taslak | 1 Kasım 2022, 12:00:00 | 30 Kasım 2022, 12:00:00 | Devam ediyor |
İnceleme | 15 Kasım 2022, 12:00:00 | 19 Kasım 2022, 12:00:00 | Uzatma gerekiyor |
Düzenle | 22 Kasım 2022, 12:00:00 | 22 Kasım 2022, 12:00:00 | HEMEN ŞİMDİ VADESİ GELDİ! |
Bir görevi devam ediyor olarak işaretlemek için şu ifadeyi kullanırsınız:
now >= [Başlangıç] AND now < [Son Tarih]
Uzatma isteyip istemediğinizi kontrol etmek için:
now >= [Başlangıç] AND now >= [Son Tarih]
Gerçek zamanlı verileriniz varsa ve adrenalin patlaması arıyorsanız, tam şu anda vadesi gelen görevleri işaretleyebilirsiniz:
now = [Son Tarih]
Yukarıdaki üç durumu birleştiren Durum sütununu ayarlamak için her şeyi bir case
ifadesine sararsınız:
case(now >= [Başlangıç] AND now < [Son Tarih], "Devam ediyor",
now >= [Başlangıç] AND now >= [Son Tarih], "Uzatma gerekiyor",
now = [Son Tarih], "HEMEN ŞİMDİ VADESİ GELDİ!")
Veri türleri
Veri türü | now tarafından döndürülen |
---|---|
Dize | ❌ |
Sayı | ❌ |
Zaman damgası | ✅ |
Boolean | ❌ |
JSON | ❌ |
now
, veritabanınız tarafından destekleniyorsa zaman dilimi ile zaman damgası
döndürür, aksi takdirde zaman dilimi olmadan zaman damgası
döndürür.
Bu veri türlerinin Patrona'da nasıl davrandığı hakkında daha fazla bilgi için bkz. Zaman dilimleri.
Sınırlamalar
Patrona rapor saat dilimi ile aynı saat diliminde yaşamıyorsanız, now
(yerel saatinizde) aslında şimdi olmayabilir.
now
'ı farklı bir saat dilimindeki bir sütunla karşılaştırmanız gerekiyorsa, her iki sütunu da aynı saat dilimine kaydırmak için convertTimezone kullanın. Örneğin:
convertTimezone(now, 'UTC', <rapor saat dilimi>) >= convertTimezone([Son Tarih], 'UTC', <kaynak saat dilimi>)
İlgili işlevler
Aynı şeyi yapmanın farklı yolları, çünkü özel ifadeleri daha fazla kullanmayı sevseniz de, şimdi zamanı değil.
SQL
Bir soruyu sorgu oluşturucu kullanarak çalıştırdığınızda, Patrona sorgu oluşturucu ayarlarınızı (filtreler, özetler vb.) bir SQL sorgusuna dönüştürür ve sonuçlarınızı almak için bu sorguyu veritabanınıza karşı çalıştırır.
Varsayılan olarak, now
Patrona'nızın rapor saat dilimini kullanır. Yöneticiniz bir rapor saat dilimi ayarlamadıysa, now
veritabanınızın saat dilimini kullanır.
Postgres veritabanı kullandığınızı varsayalım. Patrona rapor saat diliminiz EST olarak ayarlanmışsa, EST'de now
alırsınız:
SELECT CURRENT_TIMESTAMP AT TIME ZONE 'EST'
Bir rapor saat diliminiz yoksa, Postgres veritabanının saat diliminde (genellikle UTC) now
alırsınız:
SELECT CURRENT_TIME
Elektronik Tablolar
Elektronik tablo işlevi NOW()
, işletim sisteminizin saat dilimindeki geçerli tarih ve saati alır (bilgisayarınızda veya mobil cihazınızda bulunan saat).
Python
pandas
modülünü kullanarak pd.Timestamp.now()
kullanabilirsiniz. Bu, işletim sisteminizin saat dilimindeki geçerli tarih ve saati içeren bir Timestamp
nesnesi verir.