EXTRACT() รองรับหน่วยรวม (Compound Units) ดังนี้:
- SECOND_MICROSECOND
- MINUTE_MICROSECOND
- HOUR_MICROSECOND
- DAY_MICROSECOND
- MINUTE_SECOND
- HOUR_SECOND
- HOUR_MINUTE
- DAY_SECOND
- DAY_MINUTE
- DAY_HOUR
- YEAR_MONTH
ตัวอย่าง
mysql> SELECT EXTRACT(YEAR_MONTH FROM '2017-10-20'); +---------------------------------------+ | EXTRACT(YEAR_MONTH FROM '2017-10-20') | +---------------------------------------+ | 201710 | +---------------------------------------+
ส่งคืนปีและเดือนรวมกันเป็น 201710
mysql> SELECT EXTRACT(DAY_HOUR FROM '2017-10-20 05:46:45'); +----------------------------------------------+ | EXTRACT(DAY_HOUR FROM '2017-10-20 05:46:45') | +----------------------------------------------+ | 2005 | +----------------------------------------------+
ส่งคืนวันและชั่วโมงรวมกันเป็น 2005 (วันที่ 20, ชั่วโมง 05)
สำคัญ: หน่วยรวมจะคืนค่าครบชุดระหว่างหน่วยเริ่มต้นและสิ้นสุด เช่น DAY_MICROSECOND จะคืนค่า DAY, HOUR, MINUTE, SECOND, MICROSECOND รวมกัน
mysql> SELECT EXTRACT(DAY_MICROSECOND FROM '2017-10-22 05:52:45.102356'); +---------------------------------------------------------------------------+ | EXTRACT(DAY_MICROSECOND FROM '2017-10-22 05:52:45.102356') | +---------------------------------------------------------------------------+ | 22055245102356 | +---------------------------------------------------------------------------+