เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การเปลี่ยน offset ของวันที่

ใช้ฟังก์ชัน SWITCHOFFSET() เพื่อเปลี่ยนเขตเวลาของวันที่ชนิด DATETIME, DATETIME2 หรือ DATETIMEOFFSET หรือสตริงวันที่ที่ถูกต้อง โดย SWITCHOFFSET() รับพารามิเตอร์ 2 ตัว ได้แก่ วันที่หรือสตริงที่ต้องการ และ offset ของเขตเวลา จากนั้นจะคืนค่าเวลาในเขตเวลาใหม่นั้น เช่น 3:00 น. Eastern Daylight Time จะกลายเป็น 2:00 น. Central Daylight Time

พิธีเปิดโอลิมปิกฤดูร้อน 2016 ที่ริโอเดอจาเนโรเริ่มต้นเมื่อเวลา 23:00 น. UTC วันที่ 8 สิงหาคม 2016 โดยเริ่มจากสตริงที่บรรจุวันที่และเวลาดังกล่าว เพื่อดูว่าเวลานั้นตรงกับช่วงใดในสถานที่อื่น

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การวิเคราะห์อนุกรมเวลาใน SQL Server

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ระบุการเรียกใช้ฟังก์ชันที่เหมาะสมสำหรับ Brasilia ประเทศบราซิล
  • ระบุการเรียกใช้ฟังก์ชันและเขตเวลาที่เหมาะสมสำหรับชิคาโก รัฐอิลลินอยส์ ในเดือนสิงหาคม ชิคาโกช้ากว่า Brasilia Standard Time อยู่ 2 ชั่วโมง
  • ระบุการเรียกใช้ฟังก์ชันและเขตเวลาที่เหมาะสมสำหรับนิวเดลี ประเทศอินเดีย อินเดียไม่มีการปรับเวลาตามฤดูกาล ดังนั้นในเดือนสิงหาคม นิวเดลีจึงเร็วกว่า Brasilia Standard Time อยู่ 8 ชั่วโมงครึ่ง โปรดระวังว่า Brasilia และนิวเดลีอยู่คนละฝั่งของ UTC เมื่อคำนวณเขตเวลา

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

DECLARE
	@OlympicsUTC NVARCHAR(50) = N'2016-08-08 23:00:00';

SELECT
	-- Fill in the time zone for Brasilia, Brazil
	___(@OlympicsUTC, '-03:00') AS BrasiliaTime,
	-- Fill in the time zone for Chicago, Illinois
	___(@OlympicsUTC, ___) AS ChicagoTime,
	-- Fill in the time zone for New Delhi, India
	___(@OlympicsUTC, '+___') AS NewDelhiTime;
แก้ไขและรันโค้ด