请选择 进入手机版 | 继续访问电脑版

[MySql] mysql判定 当前时间是否在开始与竣事 时间之间且开始与竣事 时间答应 为空

[复制链接]
查看78 | 回复4 | 2021-9-12 22:05:47 | 显示全部楼层 |阅读模式
目次

需求:查询举行 中的活动数据

举行 中一共有以下几种环境 :
1.开始时间为空,竣事 时间为空, 此效果 数据将永久 为举行 中的数据
2.开始时间为空,竣事 时间不为空,则当前时间在竣事 时间之前,为举行 中的数据
3.开始时间不为空,竣事 时间为空,则当前时间在开始时间之后,为举行 中的数据
4.开始时间不为空,竣事 时间不为空,则当前时间在开始与竣事 时间段之内的数据为举行 中数据

下面sql则查询的是满意 以上四种需求的效果 集,达标题需求

  1. SELECT * FROM
  2. 表名
  3. WHERE 1=1
  4. and(start_time is null or start_time<now())
  5. and(end_time is null or end_time>now())
复制代码

mybatis写法,开始时间与竣事 时间传入参数答应 为空
如图所示:

在这里插入图片形貌

  1. <if test="record.startDate != null and record.startDate != '' or record.endDate != null and record.endDate != '' ">
  2. AND id in
  3. (select id from rht_product_price where 1=1
  4. <if test="record.startDate != null and record.startDate != ''">
  5. and start_date &lt;= #{record.startDate,jdbcType=VARCHAR}
  6. </if>
  7. <if test="record.endDate!= null and record.endDate != ''">
  8. and end_date &gt;= #{record.endDate,jdbcType=VARCHAR}
  9. </if>
  10. )
  11. </if>
复制代码

到此这篇关于mysql判定 当前时间是否在开始与竣事 时间之间且开始与竣事 时间答应 为空的文章就先容 到这了,更多干系 mysql判定 当前时间是否在开始与竣事 时间之间内容请搜索 脚本之家从前 的文章或继续欣赏 下面的干系 文章盼望 大家以后多多支持脚本之家!


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

avatar 散粉的火把煌 | 2021-9-19 06:46:42 | 显示全部楼层
以后要跟admin楼主好好学习学习!
回复

使用道具 举报

avatar 天八部饶gc | 2021-9-30 16:32:27 | 显示全部楼层
帖子很有深度!
回复

使用道具 举报

avatar 后果后我买卖顺 | 2021-10-11 16:14:31 | 显示全部楼层
楼上的这是啥态度呢?
回复

使用道具 举报

不错的帖子,值得收藏!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则