Impliciete conversie

Functies voor het bewerken van data in SQL Server

Ana Voicu

Data Engineer

Gegevens vergelijken

Onthoud: om twee waarden te vergelijken, moeten ze van hetzelfde type zijn.

Anders:

  • SQL Server zet types om (IMPLICIET)
  • De developer zet expliciet om (EXPLICIET)
Functies voor het bewerken van data in SQL Server

Voorbeeld van mogelijke conversies

SELECT 
    company
    bean_type,
    cocoa_percent
FROM ratings;
Functies voor het bewerken van data in SQL Server

Voorbeeld van mogelijke conversies

SELECT 
    company
    bean_type,
    cocoa_percent
FROM ratings
WHERE cocoa_percent > 0.5; 

| company | bean_type  | cocoa_percent |
|---------|------------|---------------|
| Amedei  | Blend      | 0.7000        |
| Bonnat  | Trinitario | 0.7500        |
| ...     | ...        | ...           |
Functies voor het bewerken van data in SQL Server

Voorbeeld van mogelijke conversies

SELECT 
    company
    bean_type,
    cocoa_percent
FROM ratings
WHERE cocoa_percent > -2; 

| company | bean_type  | cocoa_percent |
|---------|------------|---------------|
| Amedei  | Blend      | 0.7000        |
| Bonnat  | Trinitario | 0.7500        |
| ...     | ...        | ...           |
Functies voor het bewerken van data in SQL Server

Voorbeeld van mogelijke conversies

SELECT 
    company
    bean_type,
    cocoa_percent
FROM ratings
WHERE cocoa_percent > GETDATE();

| company | bean_type  | cocoa_percent |
|---------|------------|---------------|
| ...     | ...        | ...           |
Functies voor het bewerken van data in SQL Server

Voorbeeld van mogelijke conversies

SELECT 
    company
    bean_type,
    cocoa_percent
FROM ratings
WHERE cocoa_percent > 'A';


| result                                         | 
|------------------------------------------------|
| Error converting data type varchar to numeric. |
Functies voor het bewerken van data in SQL Server

Voorbeeld van mogelijke conversies

SELECT 
    company
    bean_type,
    cocoa_percent
FROM ratings
WHERE cocoa_percent > '0.5';
| company | bean_type  | cocoa_percent |
|---------|------------|---------------|
| Amedei  | Blend      | 0.7000        |
| Bonnat  | Trinitario | 0.7500        |
| ...     | ...        | ...           |
Functies voor het bewerken van data in SQL Server

Prioriteit van datatypes

Prioriteit van datatypes

Functies voor het bewerken van data in SQL Server

Prioriteit van datatypes

Functies voor het bewerken van data in SQL Server

Impliciete conversie tussen datatypes

Tabel met impliciete conversie

Functies voor het bewerken van data in SQL Server

Prestatie-impact van impliciete conversie

  • Impliciete conversie gebeurt per rij in de query
  • Voorkom dit met een goed databaseschema.
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...