sql - 查找日期范围包含给定日期的记录?

标签 sql ruby postgresql date

我在数据库中有一个工资期列表,需要根据给定日期查找记录。

例如,支付期#26 的日期范围是 2013 年 10 月 13 日到 2013 年 10 月 26 日。

如果我通过了 2013 年 10 月 17 日,我希望它在数据库中找到支付期 #26 的行。

就其值(value)而言,我使用的是 Ruby,数据库是 Postgresql。

== Table: pay_periods ==
period:integer
start_date:date
end_date:date

最佳答案

假设您的日期存储在 date 局部变量中,这应该有效:

PayPeriod.where('start_date <= :date AND end_date >= :date', date: date)

关于sql - 查找日期范围包含给定日期的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20375170/

相关文章:

我在更新 CRUD 时遇到问题

sql - 合并,匹配时插入

ruby-on-rails - AWS s3从rails应用程序访问私有(private)存储桶url

postgresql - 在 PgAdmin 中的函数外部执行 FOR 循环失败,并显示 "syntax error at or near "for""

postgresql - 如何选择一个数字作为 PostgreSQL 中日期添加函数的一部分放入 INTERVAL

sql - 如何在 SQL Server 中使用 nvarchar 变量为 unicode 使用前缀 'N'?

sql - 使用 order by 时在大表上查询速度慢

ruby - native 库 + rvm

ruby - 清除或删除 Ruby PStore

postgresql - 有条件的松散索引搜索postgres