บทช่วยสอนนี้จะให้วิธีการเรียกข้อมูลวันที่ปัจจุบันอย่างรวดเร็วโดยไม่มีเวลาโดยใช้ฟังก์ชัน Oracle current_date
ฟังก์ชัน Oracle CURRENT_DATE
ตามชื่อที่แนะนำ ฟังก์ชันนี้ส่งคืนวันที่ปัจจุบันโดยใช้เขตเวลาที่ระบุในเซสชันปัจจุบัน
ฟังก์ชันส่งคืนค่าวันที่ในปฏิทินเกรกอเรียนด้วยประเภท DATE เป็น DATE ไวยากรณ์มีดังต่อไปนี้:
วันที่ปัจจุบัน;
แม้ว่านี่จะเป็นฟังก์ชันที่ค่อนข้างง่าย แต่ก็สามารถช่วยคุณประหยัดการคำนวณจำนวนมากในฐานข้อมูลของคุณได้
สามารถแทรกค่าวันที่ลงในคอลัมน์ได้อย่างรวดเร็ว ช่วยให้คุณบันทึกเมื่อมีคำสั่งแทรก อัปเดต หรือลบเกิดขึ้นในฐานข้อมูลของคุณ
ค่าวันที่จะควบคุมโดยเขตเวลาที่ตั้งค่าในเซสชันปัจจุบัน ใน Oracle ค่าเขตเวลาของเซสชันถูกกำหนดโดยพารามิเตอร์ TIME_ZONE คุณสามารถแก้ไขค่านี้เพื่อเปลี่ยนเขตเวลาสำหรับเซสชันของคุณ
ภาพประกอบการใช้งานฟังก์ชั่น
แม้ว่าฟังก์ชันจะเรียบง่ายและเข้าใจได้ง่าย แต่ขอให้เราแสดงตัวอย่างบางส่วนเพื่อสาธิตวิธีการทำงานของฟังก์ชันนี้
เลือก CURRENT_DATE จากคู่;
ข้อความค้นหาด้านบนควรส่งคืนวันที่ปัจจุบันตามเขตเวลาที่เลือกเป็น:
CURRENT_DATE|------------+
2023-01-01|
การจัดรูปแบบค่าวันที่
คุณสามารถส่งค่าของฟังก์ชัน current_date ไปยังฟังก์ชัน char เพื่อจัดรูปแบบเป็นรูปแบบที่คุณต้องการ
ดังตัวอย่างที่แสดง:
เลือก TO_CHAR(CURRENT_DATE, 'DD-MM-YYYY') AS D จากคู่;ในกรณีนี้ ฟังก์ชัน to_char() จะแปลงวันที่ปัจจุบันเป็นรูปแบบ DD-MM-YYYY ดังที่แสดง:
ง |----------+
01-01-2566|
วิธีแปลงวันที่เป็นรูปแบบยาว:
ง |-------------------------+
วันอาทิตย์ที่ 01 มกราคม 2023|
รูปแบบวันที่ที่รองรับอื่นๆ ได้แก่:
Oracle Alter Session เขตเวลา
หากต้องการตั้งค่าเขตเวลาอื่นสำหรับเซสชันปัจจุบันของคุณ ให้ใช้คำสั่ง ALTER SESSION SET ดังที่แสดงด้านล่าง:
เปลี่ยนชุดเซสชัน time_zone = '-5:0';เปลี่ยนชุดเซสชัน NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';
จากนั้น คุณสามารถเลือกวันที่ปัจจุบันสำหรับเขตเวลาที่เลือกเป็น:
เลือก CURRENT_DATE จากคู่;เอาท์พุต:
CURRENT_DATE|------------+
2022-12-31|
บทสรุป
เมื่อใช้คู่มือนี้ คุณจะได้เรียนรู้วิธีใช้ฟังก์ชัน current_date ใน Oracle เพื่อดึงข้อมูลวันที่ปัจจุบันจากเขตเวลาของเซสชันปัจจุบันอย่างรวดเร็ว