Hi, 各位先進,不好意思想請問一下,我架設了一個測試用論壇,想做一個功能就是[每週新進文章列表],
在每週五篩選出本週新貼/更新的文章,並依照其所在的版面/子版面分類後,列示出來。
因為標準的好像沒有提供這功能,所以我打算用SQL把資料擷取出來依照日期排序過濾,但我看到table
bb_topics 中,關於日期欄位的值(例如欄位topic_last_post_time,topic_time),不知道他的格式是怎樣的方式,
是否有公式可以將其轉成yyyy/mm/dd hh:mi:ss 這種易於閱讀的格式?
我將SQL抓該欄位值的結果列於下方(舉例三筆),還請各位先進不吝惠予指點,謝謝您。
執行SQL statement:
select topic_last_post_time
from phpbb3.bb_topics
order by topic_last_post_time desc;
輸出:
TOPIC_LAST_POST_TIME
----------------------
1240377461
1240297383
1240295755
...
...
對照論壇發文時間,其中
1240377461 = 2009年 4月 22日, 13:17
1240297383 = 2009年 4月 21日, 15:03
1240295755 = 2009年 4月 21日, 14:35
謝謝您!
---------------------------------------------------------------------
●主機作業系統:Linux (OEL 5)
●快速架站程式:無
●免費空間連結:無(內部測試論壇)
●您的上網方式:內網
●您安裝的程式:Apache 2.2.9 + php 5.2.6 + Oracle 11gR1
●您的 phpBB 版本:phpBB 3.0.4
●您的 domain (網域名稱) : 無(內部測試論壇)
●您的 phpBB 連結網址: 無(內部測試論壇)
---------------------------------------------------------------------
[問題] 存在資料庫欄位中的日期如何轉換成看得懂的格式?
版主: 版主管理群
Re: [問題] 存在資料庫欄位中的日期如何轉換成看得懂的格式?
可以試試用 "date()" 轉換.anns 寫:是否有公式可以將其轉成yyyy/mm/dd hh:mi:ss 這種易於閱讀的格式?
參考資料:
http://tw2.php.net/manual/en/function.date.php
Re: [問題] 存在資料庫欄位中的日期如何轉換成看得懂的格式?
Hi, 謝謝心靈捕手大師的提醒,讓我了解到這應該是源自於php的datetime資料型態。
於是,我去查了Oracle原廠文件,找到了如何用SQL把這日期算出來的方法。
我參考的文章是:
Working with Dates and Times in Oracle and PHP
http://www.oracle.com/technology/pub/ar ... dates.html
這篇文章後半段有建立二個FUNCTION:
unixts_to_date (To convert a UNIX timestamp into an Oracle DATE type)
date_to_unixts (To convert an Oracle DATE type into a UNIX timestamp)
使用本篇發問時的測試SQL,加上轉換,其中 ((1/24 * 8)是加上8小時成台灣時區時間):
select topic_last_post_time,
to_char((unixts_to_date(topic_last_post_time)+(1/24 * 8)),'yyyy/mm/dd hh24:mi:ss') The_Date
from phpbb3.bb_topics
order by topic_last_post_time desc;
輸出:
TOPIC_LAST_POST_TIME THE_DATE
---------------------- -------------------
1240377461 2009/04/22 13:17:41
1240297383 2009/04/21 15:03:03
1240295755 2009/04/21 14:35:55
Yes! 這樣就可以用SQL去抓資料啦,提供給有使用Oracle DB的朋友們參考。
再次謝謝謝謝心靈捕手大師的回覆。
於是,我去查了Oracle原廠文件,找到了如何用SQL把這日期算出來的方法。
我參考的文章是:
Working with Dates and Times in Oracle and PHP
http://www.oracle.com/technology/pub/ar ... dates.html
這篇文章後半段有建立二個FUNCTION:
unixts_to_date (To convert a UNIX timestamp into an Oracle DATE type)
date_to_unixts (To convert an Oracle DATE type into a UNIX timestamp)
使用本篇發問時的測試SQL,加上轉換,其中 ((1/24 * 8)是加上8小時成台灣時區時間):
select topic_last_post_time,
to_char((unixts_to_date(topic_last_post_time)+(1/24 * 8)),'yyyy/mm/dd hh24:mi:ss') The_Date
from phpbb3.bb_topics
order by topic_last_post_time desc;
輸出:
TOPIC_LAST_POST_TIME THE_DATE
---------------------- -------------------
1240377461 2009/04/22 13:17:41
1240297383 2009/04/21 15:03:03
1240295755 2009/04/21 14:35:55
Yes! 這樣就可以用SQL去抓資料啦,提供給有使用Oracle DB的朋友們參考。
再次謝謝謝謝心靈捕手大師的回覆。

