เป็นฟังก์ชันที่คำนวณค่าระหว่าง
X และ Y โดยมีหน่วยเป็นเดือน
ถ้าต้องการคำนวณหาค่าระหว่างคอลัมน์
STARIDATE กับคอลัมน์ ENDDATE ว่ามีระยะเวลาห่างกันกี่เดือน
SELECT TASK, STARTDATE, ENDDATE, MONTHS_BETWEEN(STARTDATE, ENDDATE)
DURATION
FROM PROJECT;
ผลของคำสั่งที่ได้คอลัมน์ DURATION
ที่ติดค่าลบเนื่องจากใช้คอลัมน์ STARTDATE ซึ่งมีค่าน้อยกว่าคอลัมน์
ENDDATE เป็นค่าเริ่มต้น
|
TASK
|
STARTDATE
|
ENDDATE
|
DURATION
|
|
KICKOFF
MTG
|
01-APR-2001
|
01-APR-2001
|
0
|
|
TECH
SURVEY
|
02-APR-2001
|
01-MAY-2001
|
-.9677419
|
|
USER
MTGS
|
15-MAY-2001
|
30-MAY-2001
|
-.483871
|
|
DESIGN
WIDGET
|
01-JUN-2001
|
30-JUN-2001
|
-.9354839
|
|
CODE
WIDGET
|
01-JUL-2001
|
02-SEP-2001
|
-2.032258
|
|
TESTING
|
03-SEP-2001
|
17-JAN-2002
|
-4.451613
|
เป็นการหาค่าเดือนเหมือนดังตัวอย่างข้างต้น
แต่จะนำคอลัมน์ ENDDATE มาเป็นค่าเริ่มต้น
SELECT TASK, STARTDATE, ENDDATE,
MONTHS_BETWEEN(ENDDATE ,STARTDATE) DURATION
FROM PROJECT;
ผลของคำสั่งที่ได้คอลัมน์
DURATION เป็นบวกเพราะคอลัมน์ ENDDATE ที่เป็นค่าเริ่มต้นมีค่ามากกว่าคอลัมน์
STARIDATE
ผลลัพธ์
TASK
|
STARTDATE
|
ENDDATE
|
DURATOPN
|
|
KICKOFF MTG
|
01-APR-2001
|
01-APR-2001
|
0
|
|
TECH SURVEY
|
02-APR-2001
|
01-MAY-2001
|
.96774194
|
|
USER MTGS
|
15-MAY-2001
|
30-MAY-2001
|
.48387097
|
|
DESIGN WIDGET
|
01-JUN-2001
|
30-JUN-2001
|
.93548387
|
|
CODE WIDGET
|
01-JUL-2001
|
02-SEP-2001
|
2.0322581
|
|
TESTING
|
03-SEP-2001
|
17-JAN-2002
|
4.4516129
|
ไม่มีความคิดเห็น:
แสดงความคิดเห็น