วันเสาร์ที่ 13 สิงหาคม พ.ศ. 2554

วัน-เวลาใน mysql เพิ่ม-ลดวัน


# แสดงเดือนปัจจุบันดังนี้ month(now()); year(now());, day
#SELECT DATE_FORMAT(NOW(), '%M %D') returns "December 27th"
-%m =01-12
-%Y = 2011
-%y = 11



SpecifierDescription
%aAbbreviated weekday name (Sun..Sat)
%bAbbreviated month name (Jan..Dec)
%cMonth, numeric (0..12)
%DDay of the month with English suffix (0th1st2nd3rd, …)
%dDay of the month, numeric (00..31)
%eDay of the month, numeric (0..31)
%fMicroseconds (000000..999999)
%HHour (00..23)
%hHour (01..12)
%IHour (01..12)
%iMinutes, numeric (00..59)
%jDay of year (001..366)
%kHour (0..23)
%lHour (1..12)
%MMonth name (January..December)
%mMonth, numeric (00..12)
%pAM or PM
%rTime, 12-hour (hh:mm:ss followed by AM or PM)
%SSeconds (00..59)
%sSeconds (00..59)
%TTime, 24-hour (hh:mm:ss)
%UWeek (00..53), where Sunday is the first day of the week
%uWeek (00..53), where Monday is the first day of the week
%VWeek (01..53), where Sunday is the first day of the week; used with %X
%vWeek (01..53), where Monday is the first day of the week; used with %x
%WWeekday name (Sunday..Saturday)
%wDay of the week (0=Sunday..6=Saturday)
%XYear for the week where Sunday is the first day of the week, numeric, four digits; used with %V
%xYear for the week, where Monday is the first day of the week, numeric, four digits; used with %v
%YYear, numeric, four digits
%yYear, numeric (two digits)
%%A literal “%” character
%xx, for any “x” not listed above

#เเพิ่ม ลดเดือนลง 1 เดือน
SELECT * FROM tickets
WHERE MONTH(created) = MONTH(DATE_ADD(now(), INTERVAL -1 MONTH))

#ถ้าต้องการเพิ่มก็ให้เป้น MONTH(DATE_ADD(now(), INTERVAL 1 MONTH))


SQL MYSQL DATE_ADD() 
เป็นคำสั่งที่ใช้สำหรับการระบุเงื่อนไขการเลือกข้อมูลในตาราง (Table) โดยทำการ บอก หรือ ลบ วันที่ ที่ต้องการ

Database : MySQL

Syntax

DATE_ADD(date,INTERVAL expr unit)


unit ValueExpected expr Format
MICROSECONDMICROSECONDS
SECONDSECONDS
MINUTEMINUTES
HOURHOURS
DAYDAYS
WEEKWEEKS
MONTHMONTHS
QUARTERQUARTERS
YEARYEARS
SECOND_MICROSECOND'SECONDS.MICROSECONDS'
MINUTE_MICROSECOND'MINUTES:SECONDS.MICROSECONDS'
MINUTE_SECOND'MINUTES:SECONDS'
HOUR_MICROSECOND'HOURS:MINUTES:SECONDS.MICROSECONDS'
HOUR_SECOND'HOURS:MINUTES:SECONDS'
HOUR_MINUTE'HOURS:MINUTES'
DAY_MICROSECOND'DAYS HOURS:MINUTES:SECONDS.MICROSECONDS'
DAY_SECOND'DAYS HOURS:MINUTES:SECONDS'
DAY_MINUTE'DAYS HOURS:MINUTES'
DAY_HOUR'DAYS HOURS'
YEAR_MONTH'YEARS-MONTHS'


Table : member

SELECT Name, DATE_ADD(OrderDate,INTERVAL 30 DAY) As RegisterDate FROM customer

สามารถใส่ค่าเป็น บวก หรือ ลบ ได้

Output







4. 12. DATE_SUB
14. 12. 1. DATE_SUB(date,INTERVAL expr unit)
14. 12. 2. DATE_SUB(curdate(), INTERVAL 1 MICROSECOND);
14. 12. 3. DATE_SUB(curdate(), INTERVAL 1 MINUTE);
14. 12. 4. DATE_SUB(curdate(), INTERVAL 1 HOUR);
14. 12. 5. DATE_SUB(curdate(), INTERVAL 1 DAY);
14. 12. 6. DATE_SUB(curdate(), INTERVAL 1 WEEK);
14. 12. 7. DATE_SUB(curdate(), INTERVAL 1 MONTH);
14. 12. 8. DATE_SUB(curdate(), INTERVAL 1 QUARTER);
14. 12. 9. DATE_SUB(curdate(), INTERVAL 1 YEAR);
14. 12. 10. DATE_SUB(curdate(), INTERVAL 1.1 SECOND_MICROSECOND);
14. 12. 11. DATE_SUB(curdate(), INTERVAL 1 SECOND);
14. 12. 12. DATE_SUB(curdate(), INTERVAL 1.1 SECOND);
14. 12. 13. DATE_SUB(curdate(), INTERVAL 1.1 MINUTE_MICROSECOND);
14. 12. 14. DATE_SUB(curdate(), INTERVAL 1.1 MINUTE_SECOND);
14. 12. 15. select DATE_SUB(curdate(), INTERVAL 1.1 HOUR_MICROSECOND);
14. 12. 16. select DATE_SUB(curdate(), INTERVAL 1.1 HOUR_SECOND);
14. 12. 17. select DATE_SUB(curdate(), INTERVAL '1:1:1' HOUR_SECOND);
14. 12. 18. select DATE_SUB(curdate(), INTERVAL 1.1 HOUR_MINUTE); (with dot)
14. 12. 19. select DATE_SUB(curdate(), INTERVAL '1:1' HOUR_MINUTE);
14. 12. 20. select DATE_SUB(curdate(), INTERVAL 1.1 DAY_MICROSECOND);
14. 12. 21. select DATE_SUB(curdate(), INTERVAL '1 1:1:1' DAY_SECOND);
14. 12. 22. select DATE_SUB(curdate(), INTERVAL '1 1:1' DAY_MINUTE);
14. 12. 23. select DATE_SUB(curdate(), INTERVAL '1 1' DAY_HOUR);
14. 12. 24. select DATE_SUB(curdate(), INTERVAL 1.1 SECOND_MICROSECOND);
14. 12. 25. select DATE_SUB(curdate(), INTERVAL '1-1' YEAR_MONTH);
14. 12. 26. select DATE_SUB(curdate(), INTERVAL '1.1' YEAR_MONTH); (with dot)
14. 12. 27. Selects all rows with a start_date value from within the last 30 days
14. 12. 28. Getting a date 6 months in the past
14. 12. 29. Using DATE_SUB function to substract 55 years from current date




Name
Register Date
Win Weerachai
2010-12-27 18:34:00


CustomerID
Name
Email
ReisgerDate
C001
Win Weerachaiwin.weerachai@thaicreate.com
2010-11-27 18:34:00


Sample1 เลือกข้อมูล Column ชื่อ RegisterDate โดยทำบวกวันที่เข้าไปอีก 1 เดือน



ตัวอย่าง
SELECT (plantreal.r_date) as lr_date,
       (plantreal.r_time) AS ltime,
       (plantreal.fore) as lfore,
       (plantreal.tail) as ltail,
       (plantreal.head) as lhead,
       (plantreal.evap) as levap,
       (plantreal.stor) as lstor,
       (plantreal.infl24) as linfl24,
       (plantreal.rel24) as lrel24
FROM plantreal
WHERE plantreal.r_date = DATE_ADD(curdate(), INTERVAL -1 DAY) AND
      plantreal.r_time = '24:00'

ไม่มีความคิดเห็น:

แสดงความคิดเห็น