如何获取45天内过期的数据..?

发布于 2024-11-08 04:02:35 字数 171 浏览 0 评论 0原文

大家好,

我有一个 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

昵称有卵用 2024-11-15 04:02:35

如果您使用 mysql,请尝试 DATEDIFF< /a>.

45 天

select * from `table` where DATEDIFF(now(),expireydate)<=45;

30 天

select * from `table` where DATEDIFF(now(),expireydate)<=30;

- 可以代替 datediff,SYSDATE 代替 now()。[不确定]


在 oracle中 sql server DateDiff 非常不同,您必须提供从 2 个日期中取出差异的单位。

DATEDIFF(datepart,startdate,enddate)

要获取当前日期,请尝试以下之一:CURRENT_TIMESTAMPGETDATE(){fn NOW ()}

If you are using mysql then try DATEDIFF.

for 45 days

select * from `table` where DATEDIFF(now(),expireydate)<=45;

for 30 days

select * from `table` where DATEDIFF(now(),expireydate)<=30;

In oracle - will do the trick instead of datediff and SYSDATE instead of now().[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 or GETDATE() or {fn NOW()}

会傲 2024-11-15 04:02:35

您可以使用简单的 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.

眉目亦如画i 2024-11-15 04:02:35

请尝试以下操作:-

 SELECT * FROM MYTABLE WHERE (expireydate in days) < ((CURRENTDATE in days)+ 45)

不要直接执行!根据您的数据库,获取日期(以天为单位)的方式会有所不同。去看看你的数据库手册或者请准确说明你的数据库是什么。

Try Below:-

 SELECT * FROM MYTABLE WHERE (expireydate in days) < ((CURRENTDATE in days)+ 45)

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文