sql - 如何选择过去六个月的每个星期五?
问题描述
我正在研究货币表。 在过去的六个月里,我需要每个星期五去。我的查询选择两个日期之间的每一天。这是我的查询
SELECT valid_from,
currency_code,
currency_rate
FROM currency_rate
WHERE valid_from > add_months(sysdate,-6) --Selects every day
AND currency_code IN ('USD', 'EUR','CAD','GBP','JPY')
AND currency_type IN ('MBDS')
ORDER BY currency_code,valid_from;
输出
1 23/07/2019 CAD 4.3561
2 24/07/2019 CAD 4.3368
3 25/07/2019 CAD 4.3636
4 26/07/2019 CAD 4.3539
5 27/07/2019 CAD 4.3059
6 28/07/2019 CAD 4.3059
7 29/07/2019 CAD 4.3059
8 30/07/2019 CAD 4.2849
9 31/07/2019 CAD 4.2429
10 01/08/2019 CAD 4.214
.. ../../.... CAD ......
.. ../../.... CAD ......
.. ../../.... CAD ......
173 21/01/2020 CAD 4.5281
输出(应该是)
1 26/07/2019 CAD 4.3561
2 02/08/2019 CAD 4.3368
3 09/08/2019 CAD 4.3636
4 16/08/2019 CAD 4.3539
5 23/08/2019 CAD 4.3059
6 .......... CAD ......
7 .......... CAD ......
.. .......... CAD ......
.. .......... CAD ......
.. 10/01/2020 CAD ......
.. 17/01/2020 CAD ......
感谢您的帮助。
解决方案
不清楚您是在寻找 Oracle 还是 MS SQL-Server。如果您需要它用于 Oracle,您可以使用
WHERE valid_from > add_months(sysdate,-6)
AND TO_CHAR(valid_from, 'Dy', 'nls_date_language = american') = 'Fri'
推荐阅读
- python-3.x - Spacy 3.0 训练自定义 NER --> 验证此自定义 NER 模型
- java - java.lang.ClassCastException:类 java.lang.String 无法转换为 MidTermProject 类
- sql - 引用同一张表的多对多关系
- node.js - 无法获取 req.files。React-native - Node js (multer)
- sql - Oracle Select Query Populate 默认值为 NA 在行中
- javascript - React 路由器路径中的领先标签
- javascript - 在 React 组件上显示对象数组中的数据:TypeError:data.map 不是函数
- javascript - 从 Google 地球引擎中的图像集合中导出图像 - 超出用户内存限制
- apache - apache2 mod_rewrite 没有按预期工作
- reactjs - React Swiper.js在从数组呈现的索引处删除幻灯片