php 與 mysql 入門學習指南

16
PHP 與 MySql 與與與與與與 PHP PHP MySQL MySQL 與與與與與與 與與與與與與 與 31 與 與與與與與與 與與與與 與 與與與與 與

Upload: caldwell-newton

Post on 05-Jan-2016

30 views

Category:

Documents


2 download

DESCRIPTION

PHP 與 MySQL 入門學習指南. 第 31 章 日期時間資料. 凱文瑞克 著. 日期相關的資料型態. DATETIME 欄位資料型態. 這種欄位保存了完整的日期與時間 , 精確度可至秒 , 資料允許範圍從「 1000-01-01 00:00:00 」到「 9999-12-31 23:59:59 」。. DATE 欄位資料型態. DATE 紀錄特定日期 , 但是沒有儲存時間的資訊 , 此資料型態符合 Y2K 測試 , 其資料範圍從「 1000-01-01 」到「 9999-12-31 」. TIME 欄位資料型態. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

PHPPHP 與與 MySQLMySQL 入門學習指南入門學習指南

第 31 章 日期時間資料

凱文瑞克 著凱文瑞克 著

Page 2: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

日期相關的資料型態

日期與時間的資料型態

資料型態 標準格式 空值格式(填入 0 )

DATETIME YYYY-MM-DD HH:MM:SS 0000-00-00 00:00:00

DATE YYYY-MM-DD 0000-00-00

TIME HH:MM:SS 00:00:00

YEAR YYYY 0000

TIMESAMP 變數(最長值之數值) 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Page 3: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

DATETIME 欄位資料型態這種欄位保存了完整的日期與時間 , 精確度可至秒 , 資料允許範圍從「 1000-01-01 00:00:00 」到「 9999-12-31 23:59:59 」。

Page 4: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

DATE 欄位資料型態 DATE 紀錄特定日期 , 但是沒有儲存時間的資訊 , 此資料型態符合 Y2K 測試 , 其資料範圍從「 1000-01-01 」到「 9999-12-31 」

Page 5: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

TIME 欄位資料型態 和 DATE 欄位資料型態正好相反 , 它紀錄的是特定時間。它可紀錄的時間範圍不僅是從「 00:00:00 」到「 23:59:59 」 , 事實上 , 是從「 -838:59:59 」到「 838:59:59 」 , 如此不僅只是可利用來紀錄一般的時間 , 也可以用來紀錄兩個特定事件之間的時間差。

上面這些欄位資料型態的輸入方式都很有彈性 , 資料分隔字元可以使用「 - 」 , 或省略前置的 0, 例如「 04.22.10 」可寫成「 4.22.10 」。也可用沒有任何分隔字元的輸入方式 , 例如「 042210 」或是「 42210 」 , 但是使用這種方式時要小心 , MySQL 是由右至左依序判別時間 , 如「 4:22 」或「 0422 」都會被當作「 00:04:22 」 , 而不是「 04:22:00 」。

Page 6: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

YEAR 欄位資料型態YEAR 欄位資料型態是用來紀錄年份 , 它的資料長度為 1 byte, 其資料允許範圍為 1901 至 2155, 其數值表示為二位數或是四位數。二位數的範圍可存入 1 到 99 (數字 1 到 99 或是字串 '00' 到 '99' ) , 特別的是若數值介於 1 到 69 之間(或是 0 到 69 ) , 代表的是 2001 年到 2069 年 (或是 2000 年到 2069 年)。

Page 7: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

TIMESTAMP 欄位資料型態 (1)TIMESTAMP 欄位資料型態是個相當好用的型態 , 它所紀錄的是該筆資料存入或更新時的時間 , 可以很方便的用來紀錄資料最近更新的時間 , 而不必每次需要另行處理時間後再存入。 TIMESTAMP 只能處理介於 1970 到 2037 年之間的資料 , 其可精確至秒 , 下表為其所提供的格式。

Page 8: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

TIMESTAMP 欄位資料型態 (2)

資料型態 顯示格式

TIMESTAMP(14) YYYYMMDDHHMMSS

TIMESTAMP(12) YYMMDDHHMMSS

TIMESTAMP(10) YYMMDDHHMM

TIMESTAMP(8) YYYYMMDD

TIMESTAMP(6) YYMMDD

TIMESTAMP(4) YYMM

TIMESTAMP(2) YY

Page 9: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

MySQL 的日期函數 (1)[DAYOFWEEK(date)] [WEEKDAY(date)] [DAYOFMONTH(date)] [DAYOFYEAR(date)] [MONTH(date)] [DAYNAME(date)] [MONTHNAME(date)]

Page 10: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

MySQL 的日期函數 (2)[QUARTER(date)] [WEEK(date) 或 WEEK(date,first)] [YEAR(date)] [HOUR(time)] [MINUTE(time)] [SECOND(time)] [PERIOD_ADD(P,N)] [PERIOD_DIFF(P1,P2)]

Page 11: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

MySQL 的日期函數 (3)[DATE_ADD(date,INTERVAL expr type)] [DATE_SUB(date,INTERVAL expr type)] [ADDDATE(date,INTERVAL expr type)] [SUBDATE(date,INTERVAL expr type)]

Page 12: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

MySQL 的日期函數 (4)TYPE 值 意義 EXPR 格式

SECOND 秒 SECONDS

MINUTE 分鐘 MINUTES

HOUR 時間 HOURS

DAY 天 DAYS

MONTH 月 MONTHS

YEAR 年 YEARS

MINUTE_SECOND 分鐘和秒 "MINUTES:SECONDS"

HOUR_MINUTE 小時和分鐘 "HOURS:MINUTES"

DAY_HOUR 天和小時 "DAYS HOURS"

YEAR_MONTH 年和月 "YEARS-MONTHS"

HOUR_SECOND 小時 , 分鐘, "HOURS:MINUTES:SECONDS"

DAY_MINUTE 天 , 小時 , 分鐘 "DAYS HOURS:MINUTES"

DAY_SECOND 天 , 小時 , 分鐘 , 秒 "DAYS HOURS:MINUTES:SECONDS"

Page 13: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

MySQL 的日期函數 (5)[TO_DAYS(date)] [FROM_DAYS(N)] [DATE_FORMAT(date,format)]

修飾符號 參數用途

%M 月名 (January……December)

%W 星期名字 (Sunday……Saturday)

%D 有英語前綴的月份的日期 (1st, 2nd, 3rd, 等等。 )

%Y 年 , 數字 , 4 位

%y 年 , 數字 , 2 位

%a 縮寫的星期名字 (Sun……Sat)

%d 月份中的天數 , 數字 (00……31)

%e 月份中的天數 , 數字 (0……31)

Page 14: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

MySQL 的日期函數 (6)%m 月 , 數字 (01……12)

%c 月 , 數字 (1……12)

%b 縮寫的月份名字 (Jan……Dec)

%j 一年中的天數 (001……366)

%H 小時 (00……23)

%k 小時 (0……23)

%h 小時 (01……12)

%I 小時 (01……12)

%l 小時 (1……12)

%i 分鐘 , 數字 (00……59)

%r 時間 ,12 小時 (hh:mm:ss [AP]M)

%T 時間 ,24 小時 (hh:mm:ss)

%S 秒 (00……59)

%s 秒 (00……59)

%p AM 或 PM

%w 一個星期中的天數 (0=Sunday ……6=Saturday )

%U 星期 (0……52), 這裡星期天是星期的第一天

%u 星期 (0……52), 這裡星期一是星期的第一天

%% 一個文字“ %” 。

Page 15: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

MySQL 的日期函數 (7)[TIME_FORMAT(time,format)] [CURDATE( ) 或 CURRENT_DATE] [CURTIME() 或 CURRENT_TIME] [NOW() 或 SYSDATE() 或 CURRENT_TIM

ESTAMP] [UNIX_TIMESTAMP() 或 UNIX_TIMESTA

MP(date)]

Page 16: PHP 與 MySQL 入門學習指南

PHP 與 MySql 入門學習指南

MySQL 的日期函數 (8)[FROM_UNIXTIME(unix_timestamp) ][FROM_UNIXTIME(unix_timestamp,forma

t)] [SEC_TO_TIME(seconds)] [TIME_TO_SEC(time)]