SQL Datetime: ทุกสิ่งที่คุณต้องรู้



บทความเกี่ยวกับ sql datetime นี้จะช่วยให้คุณเข้าใจวิธีการพิมพ์วันที่และเวลาและวิธีการแปลงจากประเภทวันที่และเวลาอื่นเป็นวันที่และเวลา

ในบางครั้งการจัดการกับวันที่และเวลาใน SQL อาจเป็นเรื่องยุ่งยากมาก แม้ว่าวันที่และเวลาเป็นชนิดข้อมูลที่แตกต่างกันโดยสิ้นเชิง แต่ก็มักจะรวมเข้ากับประเภทข้อมูลวันที่และเวลา วันที่และเวลาของ SQL คนเดียวค่อนข้างเรียบง่าย แต่การรวมทั้งสองอย่างเข้าด้วยกันอาจเป็นงานที่เจ็บปวดที่สุดอย่างหนึ่ง ในบทความนี้จะเรียนรู้เกี่ยวกับประเภทวันที่และเวลาของ SQL โดยละเอียด

ประเภทข้อมูลวันที่และเวลาคืออะไร?

ใน SQL วันเวลา ชนิดข้อมูลวันที่ใช้สำหรับค่าที่มีทั้งวันที่และเวลา ไมโครซอฟต์ กำหนดว่าเป็นไฟล์ วันที่รวมกับช่วงเวลาของวันที่มีเศษเสี้ยววินาทีซึ่งอิงตามนาฬิกาแบบ 24 ชั่วโมง .





โดยเฉพาะ SQL มีข้อมูลหลายประเภทที่รวมทั้งการแสดงวันที่และเวลาทำให้สิ่งต่างๆซับซ้อนมากขึ้น สิ่งที่ใช้กันอย่างแพร่หลายคือ DATETIME ซึ่งมีมาตั้งแต่รุ่นก่อนหน้าของ SQL SQL ดึงข้อมูลและแสดงค่า DATETIME ในรูปแบบ 'YYYY-MM-DD hh: mm: ss' ช่วงที่รองรับคือ '1753-01-01 00:00:00' ถึง '9999-12-31 23: 59: 59.997' มาสำรวจประเภทวันที่และเวลาโดยละเอียดกันดีกว่า

คำอธิบายวันที่และเวลา

โปรดตรวจสอบตารางต่อไปนี้เพื่อทราบข้อมูลเพิ่มเติมเกี่ยวกับประเภทวันที่และเวลาของ SQL



ทรัพย์สิน มูลค่า

ไวยากรณ์

วันเวลา

การใช้งาน



ประกาศ @MyDatetimeวันเวลา

สร้างตาราง Table1 (คอลัมน์ 1วันเวลา)

รูปแบบ

‘YYYY-MM-DD hh: mm: ss.nnn

ช่วงเวลา

00:00:00 ถึง 23: 59: 59.997

ช่วงองค์ประกอบ

  • YYYY คือตัวเลขสี่หลักตั้งแต่ปี 1753 ถึง 9999 ซึ่งแสดงถึงหนึ่งปี
  • MM เป็นตัวเลขสองหลักตั้งแต่ 01 ถึง 12 ซึ่งแสดงถึงเดือนในปีที่ระบุ
  • DD คือตัวเลขสองหลักตั้งแต่ 01 ถึง 31 ขึ้นอยู่กับเดือนซึ่งแสดงถึงวันของเดือนที่ระบุ
  • hh คือตัวเลขสองหลักตั้งแต่ 00 ถึง 23 ซึ่งแทนชั่วโมง
  • mm เป็นตัวเลขสองหลักตั้งแต่ 00 ถึง 59 ซึ่งแสดงถึงนาที
  • ss เป็นตัวเลขสองหลักตั้งแต่ 00 ถึง 59 ซึ่งแทนค่าที่สอง
  • n * เป็นศูนย์ถึงสามหลักตั้งแต่ 0 ถึง 999 ซึ่งแสดงถึงเศษส่วนของวินาที

ขนาดการจัดเก็บ

วิธีหาความยาวอาร์เรย์ในจาวาสคริปต์

8 ไบต์

ค่าเริ่มต้น

1900-01-01 00:00:00 น

ปฏิทิน

เกรกอเรียน (รวมช่วงปีที่สมบูรณ์)

บันทึก: รายละเอียดด้านบนใช้สำหรับประเภทวันที่และเวลาใน Transact-SQL และเซิร์ฟเวอร์ SQL

นั่นคือ วันเวลา ใน SQL แต่คุณจะทำอย่างไรถ้าคุณมีเดท &ประเภทเวลาและคุณต้องแปลงเป็น วันเวลา พิมพ์?

การแปลงประเภทวันที่และเวลาอื่นเป็นชนิดข้อมูลวันที่และเวลา

วันเวลา ชนิดข้อมูลใน SQL รวมวันที่และเวลาโดยมีเศษเสี้ยววินาที 3 หลัก ความแม่นยำจะถูกปัดเศษเป็น. 000, .003 หรือ. 007 วินาที ดังนั้นเมื่อคุณแปลงไฟล์ วันที่ หรือ เวลา ค่าเป็น วันเวลา ข้อมูลเพิ่มเติมจะถูกเพิ่มเข้าไปในมูลค่า เนื่องจากไฟล์ วันเวลา ชนิดข้อมูลมีทั้งวันที่และเวลา ส่วนนี้ของบทความจะอธิบายถึงสิ่งที่เกิดขึ้นเมื่ออื่น ๆ วันและเวลา ชนิดข้อมูลจะถูกแปลงเป็นไฟล์ วันเวลา ประเภทข้อมูล.

ตัวอย่างที่ 1: การแปลงโดยนัยระหว่างวันที่และวันที่และเวลา

DECLARE @date date = '2020-12-01' DECLARE @datetime datetime = @date

ผลลัพธ์

@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2559 -12-21

ตัวอย่างที่ 2: การแปลงโดยนัยระหว่างวันที่และวันที่และเวลาโดยใช้ CAST ()

DECLARE @thedate date = '2020-12-01' SELECT @thedate AS 'date', CAST (@thedate AS datetime) AS 'datetime'

ผลลัพธ์

@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2559 -12-21

ตัวอย่างที่ 3: การแปลงโดยนัยจาก smalldatetime เป็น datetime

เมื่อการแปลงมาจาก s malldatetime พิมพ์ชั่วโมงและนาทีจะถูกคัดลอก วินาทีและเศษส่วนของวินาทีถูกตั้งค่าเป็น 0 รหัสต่อไปนี้แสดงผลลัพธ์ของการแปลงไฟล์ a smalldatetime ค่าเป็น วันเวลา มูลค่า.

DECLARE @smalldatetime smalldatetime = '2020-12-01 12:32' DECLARE @datetime datetime = @smalldatetime SELECT @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'

ผลลัพธ์

@datetime @smalldatetime ----------------------------------------- - 2016-12-01 12: 32: 00.000 2016-12-01 12:32:00 น

ในทำนองเดียวกันคุณสามารถแปลงไฟล์อื่น ๆ วันเวลา ประเภทเป็น เวลาข้อมูล พิมพ์โดยปริยายหรือใช้ โยน () และ แปลง() วิธีการ สำหรับข้อมูลอ้างอิงของคุณโปรดดูตารางด้านล่างนี้เพื่อทำความคุ้นเคยกับรูปแบบวันที่และเวลาทั้งหมด

ประเภทข้อมูล ตัวอย่าง

เวลา

12:35:29 น. 1234567

วันที่

2550-05-08

smalldatetime

2550-05-08 12:35:00 น

วันเวลา

2550-05-08 12: 35: 29.123

วันที่เวลา 2

2550-05-08 12:35:29 น. 1234567

datetimeoffset

2550-05-08 12: 35: 29.1234567 +12: 15

ด้วยเหตุนี้เราจึงมาถึงจุดสิ้นสุดของบทความนี้ ฉันหวังว่าคุณจะมีความชัดเจนเกี่ยวกับเนื้อหาที่กล่าวถึงที่นี่ ให้แน่ใจว่าคุณฝึกฝนให้มากที่สุดและเปลี่ยนประสบการณ์

หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ MySQL และทำความรู้จักกับฐานข้อมูลเชิงสัมพันธ์แบบโอเพนซอร์สนี้จากนั้นตรวจสอบไฟล์ ซึ่งมาพร้อมกับการฝึกอบรมสดที่นำโดยผู้สอนและประสบการณ์โครงการในชีวิตจริง การฝึกอบรมนี้จะช่วยให้คุณเข้าใจ MySQL ในเชิงลึกและช่วยให้คุณบรรลุความเชี่ยวชาญในเรื่องนั้น ๆ

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบทความ ‘ขั้นตอนใน SQL’ แล้วเราจะติดต่อกลับไป