แปลงสตริงเป็นวันที่
ฟังก์ชัน CONVERT() ทำงานคล้ายกับ CAST() เมื่อแปลงสตริงเป็นวันที่ ทั้งสองฟังก์ชันให้ผลลัพธ์เหมือนกันทุกประการ แม้ว่าในแบบฝึกหัดก่อนหน้าของ Chapter 1 เราจะใช้ CONVERT() แบบ 3 พารามิเตอร์ แต่ในที่นี้ต้องการเพียง 2 พารามิเตอร์เท่านั้น คือ ชนิดข้อมูลและนิพจน์อินพุต
ในแบบฝึกหัดนี้ เราจะกลับมาดูตาราง dbo.Dates อีกครั้ง แต่คราวนี้จะเป็นข้อมูลวันที่จากสำนักงานในเยอรมนี เพื่อรองรับรูปแบบวันที่แบบเยอรมัน จึงต้องใช้ SET LANGUAGE เพื่อเปลี่ยนภาษาของ session ปัจจุบันเป็นภาษาเยอรมัน ซึ่งส่งผลต่อรูปแบบวันที่ เวลา และข้อความของระบบ
ลองคิวรีตาราง dbo.Dates ก่อน เพื่อดูว่าข้อมูลแตกต่างจากแบบฝึกหัดที่แล้วอย่างไร
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์อนุกรมเวลาใน SQL Server
คำแนะนำการฝึกหัด
- ใช้ฟังก์ชัน
CONVERT()เพื่อแปลงDateTextให้เป็นชนิดข้อมูล date - จากนั้นใช้ฟังก์ชัน
CONVERT()เพื่อแปลงDateTextให้เป็นชนิดข้อมูลDATETIME2(7)
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
SET LANGUAGE 'GERMAN'
SELECT
d.DateText AS String,
-- Convert to DATE
___(___, d.DateText) AS StringAsDate,
-- Convert to DATETIME2(7)
___(___, d.DateText) AS StringAsDateTime2
FROM dbo.Dates d;