sql - 从没有年份表的范围中选择所有年份
问题描述
我选择了当前年份
SELECT EXTRACT(YEAR FROM NOW()) as value
我想打印从 1990 年到当前年份的所有年份的列表,而不必创建年份列表的表格,有没有办法做到这一点,或者我必须创建一个表格来做到这一点?
解决方案
您可以为此使用递归查询:
with recursive cte as (
select 1990 dt
union all select dt + 1 from cte where dt < extract(year from now())
)
select dt from cte order by dt
推荐阅读
- android - 为什么我的 firebase 数据库无法将 java.util.ArrayList 类型的对象转换为类型
- ruby-on-rails - RoR collection_select 不适用于哈希数组
- php - 需要在每个子 json 数组中递归地插入新的键值对
- python - 如何解决 Django TypeError - post() 参数“slug”有多个值?
- java - PayPal 与 Telegram 的集成
- android - 设置树莓派,无头设置,无需显示器或 SD 卡读卡器
- java - ArrayOutOfBounds 异常(注册程序)
- networking - 谷歌存储/谷歌负载均衡器到谷歌域ssl
- android - 即使授予权限,也无法读取或写入外部存储
- reactjs - React 问题:如何在点击时将一个组件的 id 传递给另一个组件?