Format วันที่ใน Oracle ให้แสดงปี พ.ศ

ปกติแล้วเวลาต้องการแสดงวันที่ในรูปแบบ พ.ศ ผมจะนำมาจัด ูปแบบหลังจาก ดquery ข้อมูลมาจากฐานข้อมูลแล้ว เพราะเวลาเปลี่ยนฐานข้อมูลจะได้ไม่ลำบากอะไรในการแก้ไข แต่พอมาทำงานกับฐานข้อมูล Oracle เพียงอย่างเดียว และ code ก็ไม่ได้มีอะไรมาก เพราะ query ข้อมูลทุกอย่างออกมาเป็น String หมดเลยเลยต้องมาจัด format ตั้งแต่ใน query สืบเสาะหาจนได้วิํธีการมาดังนี้

SELECT TO_CHAR(SYSDATE, 'DD/MM/YYYY', 'NLS_CALENDAR=''THAI BUDDHA'' NLS_DATE_LANGUAGE=THAI') FROM DUAL

ก็จะได้ข้อมูลประมาณนี้

17/08/2554

และทำให้ทราบเพิ่มเติมว่าหาก ต้องการจัดเรียงข้อมูลตามอักษรภาษาไทยก็ใช้แบบนี้ได้เลย

ORDER BY NLSSORT(COL_NAME, 'NLS_SORT=THAI_DICTIONARY')

แหล่งข้อมูล
3 Setting Up a Globalization Support Environment

  1. No comments yet.

  1. No trackbacks yet.