2012-10-12 26 views
1

嗨,這裏我的興趣是獲取所有在特定日期創建的表,無論何時創建它爲了創建表的列表的時間我曾嘗試:查詢獲取在特定日期創建的表

select table_name,create_time 
from information_schema.tables 
where table_schema='database_name' 

和我有結果作爲

| Table_name      | 2012-09-13 03:09:50 | 
| Table_name      | 2012-10-01 08:05:41 | 
| Table_name      | 2012-10-01 08:05:41 | 
| temp        | 2011-05-25 03:05:50 | 

現在我需要得到這個我已經試過這是在2012-10-01創建表:

select table_name,create_time 
from information_schema.tables 
where table_schema='database_name' and create_time='2012-10-01' 

我得到結果Empty set (5.09 sec)

這裏我需要得到所有在2012年10月1日創建的表格,無論時間如何。

回答

0
SELECT table_name,create_time FROM information_schema.tables WHERE table_schema='quadv2_dev' AND DATE_FORMAT(create_time,'%Y-%m-%d')='2012-09-17' 
0

相當肯定有一個更好的辦法,但這似乎是爲我工作:

SELECT table_name,create_time from information_schema.tables 
where table_schema='database_name' 
AND create_time BETWEEN '2012-10-01' AND DATE_ADD('2012-10-02', INTERVAL -1 SECOND) 
2
SELECT table_name,create_time 
FROM information_schema.tables 
WHERE table_schema='database_name' AND 
    create_time BETWEEN '2012-10-01 00:00:00' AND '2012-10-01 23:59:59' 
+0

容易理解thanx –

1

正如我們已經有其他的選擇。請看下面是否可以幫助你。

您可以簡單地使用like來獲取在特定日期創建的表,工作得很好。

select table_name,create_time from information_schema.tables where table_schema='dbname' AND (create_time like "2012-10-01 %"); 

希望這個幫助!

相關問題