sqlserver如何生成连续数值,字母,字符
作者:huryer
这篇文章主要介绍了sqlserver如何生成连续数值,字母,字符问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
sqlserver生成连续数值,字母,字符
-- 生成连续数值(0-9) WITH x AS (SELECT 0 AS id UNION ALL SELECT id + 1 AS id FROM x WHERE id < 9) SELECT * FROM x; -- 生成连续字母(a-z) WITH x AS (SELECT 1 AS id UNION ALL SELECT id + 1 AS id FROM x WHERE id < 26) SELECT CHAR(id+96) AS id FROM x; -- 生成连续字符(0-9,a-z) WITH x AS (SELECT 0 AS id,CHAR(ascii('0')) AS cc UNION ALL SELECT id + 1 AS id,CASE WHEN id<9 THEN CHAR(ascii('1')+id) ELSE CHAR(ascii('a')+id-9) END AS cc FROM x WHERE id < 35) SELECT id, cc FROM x;
sqlserver 生成连续日期
在sqlserver里,可以利用系统表master..spt_values里面存储的连续数字0到2047,结合dateadd()函数生成连续的日期。
SELECT CONVERT (VARCHAR (10),dateadd(d, number, GETDATE()),23) AS rq FROM master..spt_values WHERE type = 'p' AND number between 1 and 365
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。