spt_values表是干什么用的

fskjb01 2009-12-10 07:59:24
spt_values表是干什么用的
...全文
359 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
gxjwqm 2009-12-11
  • 打赏
  • 举报
回复
不错
laker_914 2009-12-10
  • 打赏
  • 举报
回复
学习了
SQL77 2009-12-10
  • 打赏
  • 举报
回复
系统表而已,

SELECT D
ATEADD(DD,NUBMER,'2009-10-01') AS TIME
FROM
MASTER..SPT_VALUES
WHERE TYPE='P'
AND
CONVERT(VARCHAR(10),DATEADD(DD,NUBMER,'2009-10-01'),120)<'2009-10-31'

--小F-- 2009-12-10
  • 打赏
  • 举报
回复
巧用master..spt_values表输出数字或者时间常量表2009-10-16 14:32sql开发中经常需要使用数字或者时间的常量表。

比如,输出一年的月份表,输出1000以内的自然数等等。数量连续且不超过2048。那么使用master..spt_values表就会再也方便不过了。

例如

输出1000以内的自然数:

select number from master..spt_values
where type='P' and
number between 1 and 1000

输出2008年至今以来的月份列表:

create table Mon
(
ID int identity(1,1),
Mon varchar(6)
)
GO

DECLARE
@BeginMonth varchar(6),
@EndMonth varchar(6)
SELECT
@BeginMonth='200801',
@EndMonth='200906'

INSERT Mon(Mon)
SELECT
CONVERT(VARCHAR(6),DATEADD(month,number,@BeginMonth+'01'),112)
FROM
master..spt_values
WHERE
type='P'
and
DATEADD(month,number,@BeginMonth+'01')<=@EndMonth+'01'
SELECT * FROM Mon

DROP TABLE Mon

--小F-- 2009-12-10
  • 打赏
  • 举报
回复
一般用来构造数字
jiangshun 2009-12-10
  • 打赏
  • 举报
回复
装数据滴

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧