Expliciete conversie

Functies voor het bewerken van data in SQL Server

Ana Voicu

Data Engineer

Impliciete en expliciete conversie

  • IMPLICIET - automatisch, achter de schermen
  • EXPLICIET - met de functies CAST() en CONVERT()
    • CAST() en CONVERT() zetten om van het ene naar het andere datatypes
Functies voor het bewerken van data in SQL Server

CAST()

CAST(expression AS data_type [(length)])  
SELECT 
     CAST(3.14 AS int) AS DECIMAL_TO_INT,
     CAST('3.14' AS decimal(3,2)) AS STRING_TO_DECIMAL,
     CAST(GETDATE() AS nvarchar(20)) AS DATE_TO_STRING,
     CAST(GETDATE() AS float) AS DATE_TO_FLOAT;
| DECIMAL_TO_INT | STRING_TO_DECIMAL | DATE_TO_STRING     | DATE_TO_FLOAT    |
|----------------|-------------------|--------------------|------------------|
| 3              | 3.14              | Apr 11 2019 1:01PM | 43531.7052687886 |
Functies voor het bewerken van data in SQL Server

CONVERT()

CONVERT(data_type [(length)], expression [,style])  
SELECT 
     CONVERT(int, 3.14) AS DECIMAL_TO_INT,
     CONVERT(decimal(3,2), '3.14') AS STRING_TO_DECIMAL,
     CONVERT(nvarchar(20), GETDATE(), 104) AS DATE_TO_STRING,
     CONVERT(float, GETDATE()) AS DATE_TO_FLOAT;
| DECIMAL_TO_INT | STRING_TO_DECIMAL | DATE_TO_STRING | DATE_TO_FLOAT    |
|----------------|-------------------|----------------|------------------|
| 3              | 3.14              | 11.04.2019     | 43531.7052687886 |
Functies voor het bewerken van data in SQL Server

CAST() vs. CONVERT()

  • CAST() komt uit de SQL-standaard en CONVERT() is specifiek voor SQL Server
  • CAST() is beschikbaar in de meeste databases
  • CONVERT() presteert iets beter in SQL Server
Functies voor het bewerken van data in SQL Server

Laten we oefenen!

Functies voor het bewerken van data in SQL Server

Preparing Video For Download...