當前位置:首頁 » 編程語言 » phpmysqldate

phpmysqldate

發布時間: 2025-10-05 22:34:46

php+mysql 如何刪除資料庫中一個月以前的記錄

靠mysql,mysql5.1以後就支持計劃任務了。

create event every30_del on every 30 minute do delete from table1 where id='xxx';
自己去看吧http://dev.mysql.com/doc/refman/5.1/en/create-event.html
當然了schele功能要自己開啟。
SET GLOBAL event_scheler = ON;
如果mysql服務商禁止了這個功能,就不行了!

Ⅱ mysql php 日期比較

MYSQL有日期函數now(),這個值返回的不是時間戳,而是類似2010-10-1 12:12:12類似的,
PHP有日期函數date(),date("Y-m-d",time())返回當前的時間,如果單純用time(),則返回的是當前時間,比方說17等數字

MYSQL日期比較
TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30;

我們的date_col必須是日期時間格式,而不能是時間戳,

mysql> SELECT
FROM_UNIXTIME(875996580);
-> '1997-10-04 22:23:00'

day(FROM_UNIXTIME(1277709862))這個返回的是某個時間戳到現在經過的天數

獲取
日:day(FROM_UNIXTIME(add_time))
獲取 月:month(FROM_UNIXTIME(add_time))
獲取
年:year(FROM_UNIXTIME(add_time))

sql文裡面獲得時間戳後格式化為日,月,年:day(now()),month(now()),year(now())

其中add_time是欄位名,存放格式為linux時間戳.

mysql> set @a = unix_timestamp();

Query OK, 0 rows affected (0.00 sec)
mysql> select @a;

+------------+
| @a |
+------------+
| 1154942084 |

+------------+
1 row in set (0.00 sec)
mysql> select
from_unixtime(@a);
+---------------------+
| from_unixtime(@a) |

+---------------------+
| 2006-08-07 17:14:44 |

+---------------------+
1 row in set (0.00 sec)

Ⅲ mysql php 獲取系統當前時間並將時間格式轉化為datetime格式。

date_default_timezone_set('帆蘆Asia/Shanghai');
$date = date('Y-m-d H:i:s');//我此弊不確信時間就是這態扒帶格式。
mysql_query("INSERT INTO `database`.`table` ('date') VALUES ('$date')");

Ⅳ 解析mysql中UNIX_TIMESTAMP()函數與php中time()函數的區別

mysql
中:UNIX_TIMESTAMP(),
UNIX_TIMESTAMP(date)
若無參數調用,則返回一個Unix
timestamp
('1970-01-01
00:00:00'
GMT
之後的秒數)
作為無符號整數。若用date
來調用UNIX_TIMESTAMP(),它會將參數值以'1970-01-01
00:00:00'
GMT後的秒數的形式返回。date
可以是一個DATE
字元串、一個
DATETIME字元串、一個
TIMESTAMP或一個當地時間的YYMMDD
或YYYMMDD格式的數字。
mysql>
SELECT
UNIX_TIMESTAMP();
->
882226357
mysql>
SELECT
UNIX_TIMESTAMP('1997-10-04
22:23:00');
->
875996580

UNIX_TIMESTAMP被用在
TIMESTAMP列時,
函數直接返回內部時戳值,
而不進行任何隱含的
「string-to-Unix-timestamp」轉化。假如你向UNIX_TIMESTAMP()傳遞一個溢出日期,它會返回
0,但請注意只有基本范圍檢查會被履行
(年份從1970

2037,
月份從01到12,日期從
01
到31)。
這里我們可以使用
FROM_UNIXTIME(unix_timestamp),
FROM_UNIXTIME(unix_timestamp,format)來格式化一個UNIX_TIMESTAMP()時間戳,它將返回'YYYY-MM-DD
HH:MM:SS'或YYYYMMDDHHMMSS
格式值的unix_timestamp參數表示,具體格式取決於該函數是否用在字元串中或是數字語境中。
若format
已經給出,則結果的格式是根據format
字元串而定。
format
可以包含同DATE_FORMAT()
函數輸入項列表中相同的說明符。
mysql>
SELECT
FROM_UNIXTIME(875996580);
->
'1997-10-04
22:23:00'
mysql>
SELECT
FROM_UNIXTIME(875996580)
+
0;
->
19971004222300
mysql>
SELECT
FROM_UNIXTIME(UNIX_TIMESTAMP(),
->
'%Y
%D
%M
%h:%i:%s
%x');
->
'2003
6th
August
06:22:58
2003'
php中:time()
time
--
返回當前的
Unix
時間戳
返回自從
Unix
紀元(格林威治時間
1970

1

1

00:00:00)到當前時間的秒數。
從字面上理解他們是一樣的,都是返回
自從
Unix
紀元到當前時間的秒數。
筆者在同一台伺服器上做了一個測試,發現兩者返回的結果是一樣的

在mysql中用
FROM_UNIXTIME(
1156219870
,'%y-%m-%d'
)
和php中用date(
"y-m-d",1156219870
)結果也是一樣相同的!唯一不肯確定的是那一個反應更加快速。不過我還是傾向與用php中的time()函數!

Ⅳ php怎樣取得上個月的mysql數據,每個月都要統計上個月銷售額,要怎樣做才能實現

<?php

$m = date('Y-m-d', mktime(0,0,0,date('m')-1,1,date('Y'))); //上個月的開始日期
echo $m."<br>";

$t = date('t',strtotime($m)); //上個月共多少天
echo $t."<br>";
$start = date('Y-m-d', mktime(0,0,0,date('m')-1,1,date('Y'))); //上個月的開始日期

$end = date('Y-m-d', mktime(0,0,0,date('m')-1,$t,date('Y'))); //上個月的結束日期

?>

查詢的時候就查詢日期在$start到$end之間的數據就是上個月的數據了。

熱點內容
php張恩民 發布:2025-10-06 00:02:45 瀏覽:468
公司電腦伺服器搭建需要多少 發布:2025-10-05 23:41:23 瀏覽:329
生活中的虛擬存儲器 發布:2025-10-05 23:30:32 瀏覽:80
c語言程序設計通訊錄 發布:2025-10-05 23:26:29 瀏覽:192
linux關閉中斷 發布:2025-10-05 23:04:38 瀏覽:724
有什麼可以裝密碼箱的袋子 發布:2025-10-05 22:50:03 瀏覽:667
c語言bbs 發布:2025-10-05 22:44:29 瀏覽:668
開方java 發布:2025-10-05 22:44:27 瀏覽:820
頁面訪問th 發布:2025-10-05 22:34:53 瀏覽:192
phpmysqldate 發布:2025-10-05 22:34:46 瀏覽:442