การดึงเดือนและปีจาก Datetime ใน SQL Server 2005
เมื่อทำงานกับฐานข้อมูล มักเกิดความต้องการในการจัดการข้อมูลวันที่และเวลาเพื่อนำส่วนประกอบที่เฉพาะเจาะจงออกมา ใน SQL Server 2005 ความต้องการทั่วไปคือการดึง เดือน
และ ปี
จากค่า datetime
และจัดรูปแบบเป็นข้อความ เช่น ‘ม.ค. 2008’ หากคุณกำลังเผชิญกับความท้าทายนี้ คุณไม่ได้อยู่คนเดียว มาลองสำรวจวิธีการทำให้สำเร็จอย่างมีประสิทธิภาพกันเถอะ
ความท้าทาย
คุณอาจพบว่าฟังก์ชันที่สร้างขึ้นมาแล้วหลายตัว เช่น datepart
หรือ convert
ไม่ได้ให้ผลลัพธ์ในรูปแบบที่คุณต้องการโดยตรง ซึ่งอาจทำให้คุณเชื่อว่ามีทางออกที่ตรงไปตรงมาในการดึงเดือนและปีในรูปแบบ ‘ม.ค. 2008’ ไม่มี อย่างไรก็ตาม มีวิธีการที่จะทำให้คุณบรรลุเป้าหมายของคุณโดยใช้ไวยากรณ์ SQL
วิธีแก้ปัญหา
เพื่อดึง เดือน
และ ปี
จาก datetime
และรวมเป็นข้อความที่จัดรูปแบบเดียวกัน คุณสามารถใช้ฟังก์ชัน CONVERT
สองครั้งร่วมกับการเชื่อมต่อข้อความ นี่คือการแบ่งขั้นตอนการแก้ปัญหา:
ขั้นตอนที่ 1: ใช้ฟังก์ชัน CONVERT
ฟังก์ชัน CONVERT
ใน SQL Server ช่วยให้คุณเปลี่ยนประเภทข้อมูลเป็นประเภทอื่น สำหรับวัตถุประสงค์ของเรา คุณจะเปลี่ยนค่าจาก datetime
เป็นข้อความ
CONVERT(CHAR(4), date_of_birth, 100)
โค้ดนี้จะดึงเดือนและปีจากคอลัมน์ที่สมมุติชื่อ date_of_birth
สไตล์ 100
จะให้ชื่อเดือนแบบเต็ม
ขั้นตอนที่ 2: ดึงปี
เพื่อดึงปี ให้ใช้ฟังก์ชัน CONVERT
อีกครั้งพร้อมกับสไตล์ที่แตกต่างกัน:
CONVERT(CHAR(4), date_of_birth, 120)
นี่จะคืนค่าปีในรูปแบบสี่หลัก (เช่น ‘2008’)
ขั้นตอนที่ 3: รวมผลลัพธ์
เมื่อคุณได้เดือนและปีแยกกันแล้ว คุณสามารถเชื่อมต่อพวกมันเข้าด้วยกันเพื่อสร้างผลลัพธ์ที่ต้องการ
SELECT
CONVERT(CHAR(4), date_of_birth, 100) + ' ' + CONVERT(CHAR(4), date_of_birth, 120) AS MonthYear
FROM customers
แบบสอบถามตัวอย่าง
นี่คือวิธีที่แบบสอบถาม SQL ทั้งหมดจะมีลักษณะสำหรับการดึงเดือนและปีจากคอลัมน์ datetime
ที่ชื่อว่า date_of_birth
ในตารางที่ชื่อว่า customers
:
SELECT
CONVERT(CHAR(4), date_of_birth, 100) + ' ' + CONVERT(CHAR(4), date_of_birth, 120) AS MonthYear
FROM customers
แหล่งข้อมูลเพิ่มเติม
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือกในการจัดรูปแบบและเข้าใจฟังก์ชัน CONVERT
คุณสามารถดูได้ที่ เอกสาร SQL Server อย่างเป็นทางการ.
บทสรุป
การดึงและจัดรูปแบบ เดือน
และ ปี
จาก datetime
ใน SQL Server 2005 นั้นง่ายดายเมื่อคุณทราบวิธีใช้ฟังก์ชัน CONVERT
อย่างมีประสิทธิภาพ ด้วยวิธีการข้างต้น คุณสามารถจัดกลุ่มผลลัพธ์ของคุณตามเดือนและปีได้อย่างง่ายดาย ช่วยให้คุณสามารถทำการวิเคราะห์ที่เกี่ยวกับวันที่ได้อย่างราบรื่น
ตอนนี้ คุณสามารถดึงและจัดรูปแบบค่าของ datetime
ตามที่ต้องการได้อย่างมั่นใจ!