เซิร์ฟเวอร์ตารางของ Oracle มีฟังก์ชันในตัว, TRUNC(timestamp,'DY')
. ฟังก์ชันนี้จะแปลงการประทับเวลาเป็นเที่ยงคืนของวันอาทิตย์ก่อนหน้า วิธีที่ดีที่สุดในการทำสิ่งนี้ใน MySQL คืออะไร?
Oracle ยังเสนอTRUNC(timestamp,'MM')
ให้แปลงการประทับเวลาเป็นเที่ยงคืนในวันแรกของเดือนที่เกิดขึ้น ใน MySQL สิ่งนี้ตรงไปตรงมา:
TIMESTAMP(DATE_FORMAT(timestamp, '%Y-%m-01'))
แต่DATE_FORMAT
เคล็ดลับนี้ใช้ไม่ได้เป็นเวลาหลายสัปดาห์ ฉันทราบถึงWEEK(timestamp)
ฟังก์ชันนี้ แต่ฉันไม่ต้องการหมายเลขสัปดาห์ภายในปี สิ่งนี้มีไว้สำหรับการทำงานหลายปี