2013-02-09 30 views
1

我是SQL新手。我有一个包含广告信息的表格。我应该使用哪个功能来查找过去三天内发布的所有广告的ID?查找过去三天内发布的所有广告的ID,Sql

+0

[RDBMS](http://en.wikipedia.org/wiki/Relational_database_management_system)您使用的是什么? 'SQL Server'? 'MySQL'? 'Oracle'? 'DB2'? – 2013-02-09 07:20:50

+0

另外,发布表结构。 – Orangecrush 2013-02-09 07:21:28

+0

@JW,甲骨文。它包含以日期为域的pdate,以及其他一些信息 – 2013-02-09 07:25:58

回答

1

对于Oracle数据库,利用这一点,

SELECT id 
FROM tablename 
WHERE TRUNC(pdate) >= TRUNC(SYSDATE) - 3; 

SQLFIDDLE DEMO

+0

谢谢,它的工作原理。你能解释一下,“DUAL”在这里做什么? – 2013-02-09 07:37:43

+1

@MarshallBlack关于[DUAL]的信息(http://stackoverflow.com/questions/73751/what-is-the-dual-table-in-oracle) – Orangecrush 2013-02-09 07:40:54

+0

yeap,我正要这样做,只是在阅读有关双 – 2013-02-09 07:44:55

1
Select ID --the id field 
From tblAds --the ads table 
WHERE Ad_Date >= DATEADD(day,-3,getDate()) --the filter. I am assuming Ad-Date is the name of the ad's date field 
order by Ad_Date ASC -- order it 
+0

“日期添加 - 无效标识符”。我收到此消息 – 2013-02-09 07:35:22

+0

Google Oracle DateAdd函数。 – 2013-02-09 16:03:40

相关问题