Tüm Ürünler
Search
Belge Merkezi

Realtime Compute for Apache Flink:TO_DATE

Son Güncelleme:Oct 04, 2026

INT veya VARCHAR türündeki bir tarih değerini DATE veri türüne dönüştürür. format parametresi belirtilmediğinde girişin varsayılan yyyy-MM-dd biçimiyle eşleşmesi gerekir.

Söz dizimi

Date TO_DATE(INT time)
Date TO_DATE(VARCHAR date)
Date TO_DATE(VARCHAR date, VARCHAR format)

Parametreler

Parametre Veri türü Açıklama
time INT 1 Ocak 1970, 00:00:00 UTC epoch zamanından bu yana geçen gün sayısıdır. Örneğin, 200 değeri 1970-07-20 tarihine karşılık gelir.
Not

Bu davranış yalnızca Ververica Runtime (VVR) 8.0.6 ve sonraki sürümler için geçerlidir. 8.0.6'dan önceki VVR sürümlerinde değer örtük olarak STRING türüne dönüştürülür.

date VARCHAR Bir tarih dizesidir. Varsayılan biçim yyyy-MM-dd şeklindedir. Örneğin, '2017-09-15'.
format VARCHAR Özel bir tarih biçimi desenidir. Örneğin, 'yyyyMMdd' veya 'MMddyyyy'.

Kullanım notları

  • time (INT) parametresinin davranışı VVR sürümüne göre değişir:

    • VVR 8.0.6 ve sonraki sürümler: time parametresi, epoch zamanından (1 Ocak 1970, 00:00:00 UTC) itibaren geçen gün sayısı olarak yorumlanır.

    • 8.0.6'dan önceki VVR sürümleri: time parametresi işlenmeden önce örtük olarak STRING türüne dönüştürülür.

  • VARCHAR girişi kullanılırken format parametresi atlanırsa varsayılan yyyy-MM-dd biçimi uygulanır. Kaynak veriler farklı bir biçim kullanıyorsa (örneğin MySQL DATETIME için yyyy-MM-dd HH:mm:ss) format parametresini gerçek biçimle birlikte açıkça belirtmeniz gerekir. Aksi takdirde ayrıştırma işlemi başarısız olur ve 1970-01-01 gibi hatalı bir sonuç döner.

Örnekler

Aşağıdaki örneklerde T1 tablosu veri kaynağı olarak kullanılmıştır.

T1 Tablosu

date1 (INT) date2 (VARCHAR) date3 (VARCHAR) date4 (VARCHAR) date5 (VARCHAR)
200 2017-09-15 20170915 09152017 092017

INT girişini dönüştürme

Epoch zamanından bu yana geçen gün sayısını temsil eden bir tamsayı gönderin.

SELECT TO_DATE(date1) AS var1
FROM T1;
var1 (DATE)
1970-07-20 (VVR 8.0.6 ve sonraki sürümler)
0200-01-01 (8.0.6'dan önceki VVR sürümleri)

Varsayılan biçimi kullanarak VARCHAR girişini dönüştürme

Giriş zaten yyyy-MM-dd biçimindeyse format parametresini atlayabilirsiniz.

SELECT TO_DATE(date2) AS var2
FROM T1;
var2 (DATE)
2017-09-15

Özel biçim kullanarak VARCHAR girişini dönüştürme

Giriş dizesinin yapısıyla eşleşen bir format deseni iletin.

SELECT TO_DATE(date3, 'yyyyMMdd') AS var3,
       TO_DATE(date4, 'MMddyyyy') AS var4,
       TO_DATE(date5, 'MMyyyy')   AS var5
FROM T1;
var3 (DATE) var4 (DATE) var5 (DATE)
2017-09-15 2017-09-15 2017-09-01

Sonraki adımlar

  • TO_TIMESTAMP_TZ: Belirtilen saat dilimine göre bir VARCHAR tarih değerini TIMESTAMP türüne dönüştürür.

  • DATE_ADD: Belirtilen sayıda gün ekleyerek elde edilen tarihi döndürür.