Implicit conversion

ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

Ana Voicu

Data Engineer

การเปรียบเทียบข้อมูล

จำไว้: การเปรียบเทียบค่าสองค่าต้องใช้ชนิดข้อมูลเดียวกัน

ถ้าไม่เช่นนั้น:

  • SQL Server จะแปลงชนิดข้อมูลให้อัตโนมัติ (IMPLICIT)
  • นักพัฒนาแปลงข้อมูลด้วยตนเอง (EXPLICIT)
ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ตัวอย่างการแปลงชนิดข้อมูล

SELECT 
    company
    bean_type,
    cocoa_percent
FROM ratings;
ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ตัวอย่างการแปลงชนิดข้อมูล

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        |
| ...     | ...        | ...           |
ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ตัวอย่างการแปลงชนิดข้อมูล

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        |
| ...     | ...        | ...           |
ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ตัวอย่างการแปลงชนิดข้อมูล

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

| company | bean_type  | cocoa_percent |
|---------|------------|---------------|
| ...     | ...        | ...           |
ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ตัวอย่างการแปลงชนิดข้อมูล

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


| result                                         | 
|------------------------------------------------|
| Error converting data type varchar to numeric. |
ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ตัวอย่างการแปลงชนิดข้อมูล

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        |
| ...     | ...        | ...           |
ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ลำดับความสำคัญของชนิดข้อมูล

ลำดับความสำคัญของชนิดข้อมูล

ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ลำดับความสำคัญของชนิดข้อมูล

ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

Implicit conversion ระหว่างชนิดข้อมูล

ตารางการแปลงชนิดข้อมูลแบบ implicit

ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

ผลกระทบต่อประสิทธิภาพจาก implicit conversion

  • Implicit conversion จะเกิดขึ้นในทุกแถวของคิวรี
  • ป้องกัน implicit conversion ได้ด้วยการออกแบบ schema ของฐานข้อมูลให้ดี
ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

มาฝึกกันเถอะ!

ฟังก์ชันสำหรับจัดการข้อมูลใน SQL Server

Preparing Video For Download...