|
Gerelateerde onderwerpen: 10g | 11g | 8i | 9i | Database | Oracle | SQL |
Oracle SQL Conversie functiesWe kunnen in Oracle SQL getallen, strings en data omzetten naar elkaar door middel van onderstaande conversie functies. TO_NUMBER (s[,inleesmasker]) TO_CHAR (n [,weergave-masker] ) TO_DATE (s [,inleesmasker] ) Voorbeelden conversie functiesWe zullen nu de twee meest gebruikte conversie functies (resp. TO_CHAR en TO_DATE) aan de hand van een aantal voorbeelden verder toelichten. De systeemdatum wordt momenteel in het standaard datumformaat weergegeven (dwz. DD-MON-YY) in onze output. Dit datumformaat is afhankelijk van instellingen in de database en instellingen in de SQL client, in ons geval dus SQL Developer. Meer hierover vindt u in de cursus Oracle DBA deel I Wanneer we een datum met een ander formaat willen weergeven in onze output, bijvoorbeeld met de maand voluit geschreven, vier cijfers voor het jaartal en inclusief de volledige tijd, dan kunnen we dit realiseren met behulp van een conversiemasker binnen de TO_CHAR functie. SELECT to_char(sysdate, 'fmDD-MONTH-YYYY:HH24:MI:SS') datum FROM dual; DATUM ------------------------- 25-JUNE-2008:13:58:31 Let op dat een string die wij zelf herkennen als een datum, bijvoorbeeld '01-FEB-2009' door Oracle gewoon wordt gezien als string, we kunnen dus niet een datumstring zonder meer via een TO_CHAR van opmaak veranderen.
SELECT to_char('01-FEB-2009', 'Day month YYYY') datum
FROM dual;
![]() Aan de foutmelding is te zien dat Oracle een ander formaat verwacht (een numerieke waarde of een datum). De string moet dus eerst naar een datum worden geconverteerd en daarna kan eventueel het masker worden aangepast.
SELECT to_char(to_date('01-FEB-2009','DD-MON-YYYY')
, 'Day month YYYY') datum
FROM dual;
DATUM
------------------------
Sunday february 2009
De functie TO_DATE wordt dus gebruikt om Oracle te vertellen dat de ingevoerde string een datum is. De TO_CHAR functie wordt vervolgens gebruikt om deze datum in een ander dan het standaard formaat te tonen. TIP: Meer over Oracle operatoren, functies en maskers en leert u tijdens een SQL cursus. |



