SQL生成自然数,日历序列 浅析

 

01.sqlserver版本

使用sqlserver将数据复制n条

 select
      t.indx,
      t.name,
      tmp.vlue
from (
     values(1,'苹果')
)  as t(indx,  name)
,(
    select
         [number]  as vlue
     from master.dbo.spt_values
     where [type] = 'p'
        and [number] between 1 and 10
) as tmp

spt_values是什么

spt_values是SQL Server新增的一个系统表,表里面都是一些枚举数据。 (因为该表属于系统数据库master下面,所以通常在表名前面添加库名master) **解释:但是通常我们使用的是Type='P'的数据记录,master.dbo.spt_values表的字段值为"P"的对应number字段值是从0-2047。

master.dbo.spt_values使用示例

制作日历

SELECT 
  CONVERT(NVARCHAR(10), DATEADD(DAY, number, '2024-01-01'), 120) AS calendar
FROM 
  master..spt_values 
WHERE TYPE = 'P' 
 AND number <= DATEDIFF(DAY, '2024-01-01', '2024-01-31')

02.postgresql版本

使用sqlserver将数据复制n条

 select
      t.indx,
      t.name,
      tmp.vlue
from (
     values(1,'苹果')
)  as t(indx,  name)
,(
    select
         vlue
     from  generate_series(1,  10,  1)tmp(vlue)

) as tmp

generate_series(start, stop, step)函数

generate_series是PostgreSQL提供的一个内置的函数,可以用在SQL语句中,生成一个数字序列和日期序列的记录集。函数generate_series(start, stop, step)的参数分别是序列开始值,序列结束值和步长值。

generate_series()日期序列 示例

SELECT * FROM generate_series('2022-01-01'::date, '2022-01-05'::date, '1 day'::interval);

 

相关推荐

  1. SQL生成自然数,日历序列 浅析

    2024-06-05 20:42:03       9 阅读
  2. MySQL生成日期序列与表关联的 SQL 查询

    2024-06-05 20:42:03       15 阅读
  3. SQL序列

    2024-06-05 20:42:03       24 阅读
  4. sql server 生成本月日期的临时表

    2024-06-05 20:42:03       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-05 20:42:03       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-05 20:42:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-05 20:42:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-05 20:42:03       18 阅读

热门阅读

  1. 前端如何去除本地版本号缓存

    2024-06-05 20:42:03       9 阅读
  2. 广东省青少年编程预选赛:挑战与机遇并存

    2024-06-05 20:42:03       9 阅读
  3. 多角度剖析事务和事件的区别

    2024-06-05 20:42:03       7 阅读
  4. 添加pip源,ubuntu

    2024-06-05 20:42:03       8 阅读
  5. leetcode 802.找到最终的安全状态

    2024-06-05 20:42:03       6 阅读
  6. 摸鱼大数据——Hive调优10-12

    2024-06-05 20:42:03       9 阅读