2011年12月8日 星期四

[MySQL]DATE_SUB() 日期的減法運算DATE_ADD() 日期的加法運算

DATE_ADD(date,INTERVAL expr unit), DATE_SUB(date,INTERVAL expr unit)
date 傳入的日期
expr 傳入的單位值
unit 傳入的單位
INTERVAL 是一個KEY

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


回傳值根據 date 參數:
如果 date 參數是一個 DATE 值,
而你的計算只會包括 YEARMONTHDAY部分(沒有時間部分), 
其結果是一個DATE 值。否則,
結果將是一個 DATETIME 值。
如果傳入的參數是 DATETIME或是TIMESTAMP格式,
或是傳入DATE格式時,
unit使用HOURMINUTESECOND,將回傳DATETIME格式。
否則以字串格式回傳。

要確定回傳結果是 DATETIME 格式,可以用CAST()將參數 date 轉為DATETIME 格式。
MySQL 允許 expr 中使用任何標點符號。上表中所顯示的是建議的分隔符號。
日期運算也允許使用 INTERVAL 關鍵字與 + 或 - 的符號來進行。
date + INTERVAL expr unit
date - INTERVAL expr unit
如果位於另一端的表達式是一個日期或日期時間值,
INTERVAL expr unit 關鍵字允許出現在『+』的兩端。
但是只允許 INTERVAL expr unit 關鍵字允許出現在『-』的右邊,
因為 INTERVAL expr unit 出現在『-』左邊計算結果是無意義的。

SELECT '2011-12-31 23:59:59' + INTERVAL 1 SECOND;
'2012-01-01 00:00:00'

SELECT INTERVAL 1 DAY + '2011-12-31';
'2012-01-01'

SELECT '2011-01-01' - INTERVAL 1 SECOND;
'2010-12-31 23:59:59'

SELECT DATE_ADD('2011-12-31 23:59:59',INTERVAL 1 SECOND);
'2012-01-01 00:00:00'

SELECT DATE_ADD('2011-12-31 23:59:59',INTERVAL 1 DAY);
'2012-01-01 23:59:59'

SELECT DATE_ADD('2011-12-31 23:59:59',INTERVAL '1:1' MINUTE_SECOND);
'2012-01-01 00:01:00'

SELECT DATE_SUB('2011-01-01 00:00:00',INTERVAL '1 1:1:1' DAY_SECOND);
'2010-12-30 22:58:59'

SELECT DATE_ADD('2011-01-01 00:00:00',INTERVAL '-1 10' DAY_HOUR);
'2010-12-30 14:00:00'

SELECT DATE_SUB('2011-01-02', INTERVAL 31 DAY);
'2010-12-02'

SELECT DATE_ADD('2011-12-31 23:59:59.000002',INTERVAL '1.999999' SECOND_MICROSECOND);
'2012-01-01 00:00:01.000001'
















其它文章

沒有留言:

張貼留言

標籤

Oracle (150) Oracle DB (144) Oracle_DB (143) Oracle SQL (135) JAVA (84) css-基本類 (65) MySQL (59) CSS Selector (58) jQuery (49) JavaScript-基本類 (39) Spring Boot (38) JavaScript (37) JavaScript HTML DOM (37) JavaScript-HTML_DOM (36) CSS3 (30) JAVA-基本類 (28) jQuery UI (27) Apache (23) Oracle GROUP BY (20) datepicker (20) Android (18) Oracle Date (17) c (17) JAVA-lang套件 (16) Linux (16) Oracle Sub Query (16) Spring-基本類 (16) jQuery-基本類 (16) MySQL-進階系列教學 (15) Android基本類 (14) Grails (14) Oracle join (14) SQLite (13) Spring (13) WIN7-基本類 (13) grails-基本類 (13) linux cent os (13) CKEditor (12) JAVA-流程控制類 (12) JAVA_Spring (12) PHP (11) Spring MVC (11) MySQL-基本系列教學 (10) Notepad (10) Notepad++ (10) SQLite for java (10) Windows (10) c/c++ (10) eclipse (9) jQuery-Selector (9) sqldeveloper (9) DB_Toad (8) JAVA_IDE_Eclipse (8) JavaScript-String類 (8) MySQL DB Toad (8) MySQL-DATE相關 (8) MySQL-函式相關 (8) Spring Bean (8) Android Studio (7) HTML5 (7) Hibernate (7) JAVA-OCWCD (7) JavaScript-陣列類 (7) Docker (6) JAVA-程式分享 (6) JAVA.util套件 (6) JavaScript-數學類 (6) MinGw (6) MySQL-其它類 (6) Servlet (6) centos (6) Apache_Tomcat (5) Apache套件_POI (5) CSS (5) JavaScript-Date物件 (5) JavaScript-其它類 (5) PostgreSQL (5) httpd (5) log4j (5) 基本資訊 (5) 開發工具 (5) CSS Properties (4) Dev-C++ (4) IntelliJ IDEA (4) Oracle DDL (4) Sublime (4) TortoiseSVN (4) apache_Maven (4) Android NDK (3) Eclipse IDE for C/C++ (3) Hibernate-基本類 (3) JAVA-問題 (3) JAVA-綀習分享 (3) JVM (3) Linux 指令 (3) Proxy Server (3) Spring Mobile (3) Spring web (3) Squid (3) VirtualBox (3) maven (3) zk (3) 生活其它 (3) Bootstrap (2) Filter (2) JAVA_IO (2) JAVA_其它_itext套件 (2) JBoss-問題 (2) JSP (2) Jboss (2) Listener (2) MySQL-語法快速查詢 (2) Spring AOP (2) Spring Batch (2) Spring Boot Actuator (2) Spring i18n (2) Subversive (2) Tomcat 8 (2) UML (2) WebJars (2) WinMerge (2) c++ (2) c語言綀習題 (2) jQuery Mobile (2) jQuery-事件處理 (2) jQuery-套件類 (2) putty (2) svn (2) weblogic (2) Apache_JMeter (1) Apache套件_BeanUtils (1) Apache套件_StringUtils (1) Base64 (1) Google API (1) HTML5-基本類 (1) Heap (1) JAVA 7 (1) JAVA SE 、JAVA EE、JAVA ME (1) JAVA 日期 (1) JAVA-OCJP (1) JAVA-WEB (1) JAVA_IDE (1) JAVA其它 (1) JBoss Server (1) JDK (1) JMX (1) JRE (1) Java RMI (1) Java String (1) Joda Time (1) Linux_其它 (1) MySQL教學 (1) Oracle_VirtualBox (1) SQL Server (1) SWT (1) Session (1) Stack (1) Struts 2 (1) Tool (1) ZK Studio (1) csv (1) grails-其它類 (1) jQuery-進階 (1) java mail (1) java web (1) java8 (1) jsoup (1) mockmvc (1) modules (1) tomcat (1) win10 (1) 其它類 (1) 圖片工具 (1) 模擬器 (1) 讀書分享 (1) 開發資訊 (1)

精選文章

初學 Java 的 HelloWorld 程式

撰寫一個JAVA程式 public class HelloWorld{ public static void main(String[ ] args){ System.out.println("我第一支Java程式!!"); } } ...