Timestamp veri türlerini Oracle SQL'e dönüştürme

Tarih bilgisi veri türlerini Oracle'a dönüştürmek için çeşitli işlevleri kullanır.

1. Adım

DATE veri türüne bir karakter dizesi dönüştürmek için "TO_DATE ()" işlevini kullanın. Sözdizimi en basit biçimiyle şöyledir:

TO_DATE (string_value)

String_value, DATE veri türünün varsayılan biçimine dönüştürmek istediğiniz karakter dizisidir. Karakter dizesinin varsayılan formatta olmaması durumunda bir format maskesi de belirtmelisiniz. Örneğin:

TO_DATE ('01 -sep-2010 ')

Bu aşağıdaki sonucu verir:

01-Eylül-10

Dizenin değeri varsayılan biçimde aşağıdaki gibi değilse, biçimi belirtin:

TO_DATE ('20100901', 'YYYYMMDD')

Bu aşağıdaki sonucu verir: 01-SEP-10

2. Adım

Herhangi bir veri türünün değerini bir karakter dizisine dönüştürmek için "TO_CHAR ()" işlevini kullanın. Örneğin, bu işlevi DATE veri tipinin bir karaktere dönüştürmek için kullanmak isterseniz, işlev sözdizimi şöyledir:

TO_CHAR (date_value, 'format_model')

date_value, DATE veri türünün herhangi bir değerini temsil eder ve 'format_model', date_value öğesinin yorumlandığı kalıbı belirtir. Örneğin:

TO_CHAR ('20100901', 'MM / YY')

Bu aşağıdaki sonucu verir:

09/10

3. adım

Saat dilimi görüntülenirse, TIMESTAMP veri türünün bir değerini TIMESTAMP WITH TIME ZONE WITH TIME ZONE veri türü değerine dönüştürmek için "FROM_TZ ()" işlevini kullanın. Sonuç olarak, işlev TIMESTAMP değerini ve zaman dilimi değerini kendi parametreleri olarak alacaktır. Saat diliminin değeri, sırasıyla dakika cinsinden zaman ve zaman dilimini temsil eden TZH: TZM biçim dizgesidir. Örneğin:

FROM_TZ (TIMESTAMP '2010-01-09 10:00:00', '5:00')

Bu aşağıdaki sonucu verir:

01-SEP-10 10: 00: 00000: 00 AM: 00: 00

4. Adım

Bir karakter dizisini TIMESTAMP veri türüne dönüştürmek için "TO_TIMESTAMP ()" işlevini kullanın. En basit biçimdeki işlev, TIMESTAMP veri türünün bir değerine dönüştürülmesi gereken string_value değerini alır. Sözdizimi şöyledir:

TO_TIMESTAMP (dize)

Dize, varsayılan biçimde TIMESTAMP veri türüne dönüştürmek istediğiniz değeri temsil eder. "TO_DATE ()" işlevine benzer. Dizenin değeri varsayılan biçimde değilse, bir biçim modeli belirtmek gerekir. Örneğin:

TO_TIMESTAMP ('20100901', 'YYYY-AA-GGD: MI: SS')

Önceki komut, TIMESTAMP veri türündeki tarihi aşağıdaki sonuçla dönüştürür:

01-Eyl-10 6.34.00.000000000 AM

Adım 5

Bir karakter dizisini TIMESTAMP WITH TIME ZONE veri türüne dönüştürmek için "TO_TIMESTAMP_TZ ()" öğesini kullanın. "TO_TIMESTAMP ()" işlevine benzer. Fonksiyon, dönüştürülmesi gereken zincir değerini alır. Sözdizimi en basit biçimiyle şöyledir:

TO_TIMESTAMP_TZ (dize)

Örneğin:

TO_TIMESTAMP_TZ ('2010-01-08 5:00:00 -8: 00', 'YYYY / AA / GG HH: MI: SS TZH: TZM')

Bu aşağıdaki sonucu verir:

01-Eyl-10, 5:00:00 000000000 -8: 00

6. Adım

Entegre veri tipini başka bir veri türüne dönüştürmek için "CAST ()" seçeneğini kullanın. İşlevin sözdizimi, bir ifadeyi ve dönüştürülmesi gereken veri türü türünü alır. Örneğin, DATE veri türünü TTIMESTAM veri türüne dönüştürürseniz, işlevin sözdizimi şöyledir:

CAST (string_value AS veri_türü)

Örneğin, bilgisayarınızın tarihinin değerini TIMESTAMP veri türünün bir değerine dönüştürmek isterseniz, aşağıdaki komutu yazın:

CAST (sysdate AS TIMESTAMP)

Bu aşağıdaki sonucu verir:

01-SEP-10 08.34.23.000000 AM