如何获取45天内过期的数据..?
大家好,
我有一个 sql 表,该表的字段是
id
name
expireydate
现在我只想要那些在 45 天或 30 天内过期的记录。
我该如何使用sql查询呢? 我对 sql 没有更多的经验。
提前致谢,
HI all,
i have one sql table and field for that table is
id
name
expireydate
Now i want only those record which one is expired within 45 days or 30 days.
how can i do with sql query .?
I have not much more exp with sql .
Thanks in advance,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您使用 mysql,请尝试 DATEDIFF< /a>.
45 天
30 天
-
可以代替 datediff,SYSDATE
代替now()
。[不确定]在 oracle中 sql server DateDiff 非常不同,您必须提供从 2 个日期中取出差异的单位。
DATEDIFF(datepart,startdate,enddate)
要获取当前日期,请尝试以下之一:
CURRENT_TIMESTAMP
或GETDATE()
或{fn NOW ()}
If you are using mysql then try DATEDIFF.
for 45 days
for 30 days
In oracle
-
will do the trick instead of datediff andSYSDATE
instead ofnow()
.[not sure]In sql server DateDiff is quite different you have to provide unit in which difference to be taken out from 2 dates.
DATEDIFF(datepart,startdate,enddate)
to get current date try one of this:
CURRENT_TIMESTAMP
orGETDATE()
or{fn NOW()}
您可以使用简单的 SELECT * FROM yourtable WHERE expireydate < “一些计算今天+30或45天的公式”。
简单的比较将在那里进行,棘手的部分是写下关于您想要比较的日期的最后一点。这取决于您的环境以及您在数据库中存储“到期日期”的方式。
You can use a simple
SELECT * FROM yourtable WHERE expireydate < "some formula calculating today+30 or 45 days"
.Simple comparison will work there, the tricky part is to write this last bit concerning the date you want to compare to. It'll depend of your environment and how you stored the "expireydate" in the database.
请尝试以下操作:-
不要直接执行!根据您的数据库,获取日期(以天为单位)的方式会有所不同。去看看你的数据库手册或者请准确说明你的数据库是什么。
Try Below:-
Do not execute directly! Depending of your database, way of obtaining a date in days will be different. Go look at your database manual or please precise what is your database.