sql - 当插入日期 > 该月的第 10 天时加载上个月的数据
问题描述
我有一个事实表,例如表 X。我需要编写一个查询以仅在插入日期大于该月的 10 日时才加载上个月的数据。
解决方案
您可以使用如下表达式获取当前月份的第 10 天:
datefromparts(year(getdate()), month(getdate()), 10)
如果你想从一个表列中计算出来,你可以getdate()
用相关的列名替换。
不过,目前还不清楚您希望如何在查询中使用此计算。如果要过滤表中insert_date
大于当月 10 日的 s,可以执行以下操作:
select * from tablex where insert_date >= datefromparts(year(getdate()), month(getdate()), 10);
如果你想在每个月的 10 号过滤,那么:
select * from tablex where day(insert_date) >= 10
推荐阅读
- angular - Angular + Jasmine:如何忽略/模拟测试组件中的一个函数(不在依赖项中)?
- elasticsearch - 弹性 SIEM + 谷歌云平台
- python-3.x - 根据其他列值获取列值的最小值
- sql - SQL 中的多个聚合从单个值的查询开始
- jenkins - groovy.lang.MissingPropertyException:没有这样的属性:类的ERROR_MESSAGE:groovy.lang.Binding
- python - python如何在for循环中执行2个条件?(用于比较列表)
- laravel - Laravel 1 行在插入和
- php - Docker MariaDB - mysql.proc 的列数错误。预期 X,找到 Y。使用 MariaDB 50731 创建,现在运行 100508
- android - 初始化复杂过滤器时出错 问题是什么?
- ios - 输入一个字符后关闭键盘