>> 微信网站-自助建站
西安做网站公司_西安做网站的公司_西安网站建设公司
首 页
西安网站建设
西安域名注册
西安网站空间
西安企业邮局
西安网站推广
网站知识中心
关于玖佰网络
西安做网站公司_西安做网站的公司_西安网站建设公司
知识中心
建站常见问题-->
域名空间企邮-->
网站建设推广-->
网站方案优化-->
服务指南
最新文章
西安学校教育行业网站建设方案
西安电子商务网站建设解决方案
西安酒店餐饮行业网站建设方案
西安旅游服务行业网站建设方案
西安医院医疗行业网站建设方案
西安政府电子政务网站建设方案
西安生产制造行业网站建设方案
做好网站原创内容设计的五大要点
  您现在的位置: 西安做网站_西安玖佰网络 > 知识中心 > 网站建设推广 > 正文
如何利用SQL查询返回庞大的整数序列表
西安玖佰网络 www.029900.com  点击数:  更新时间:2009/4/17 14:02:01

如何利用SQL查询返回庞大的整数序列表?

WITH Digits AS (
    SELECT 0 as Number
    UNION SELECT 1
    UNION SELECT 2
    UNION SELECT 3
    UNION SELECT 4
    UNION SELECT 5
    UNION SELECT 6
    UNION SELECT 7
    UNION SELECT 8
    UNION SELECT 9
)
SELECT
   (d5.Number * 100000)
    + (d4.Number * 10000)
    + (d3.Number * 1000)
    + (d2.Number * 100)
    + (d1.Number * 10)
    + d0.Number as Number
FROM
    Digits AS d0
    , Digits AS d1
    , Digits AS d2
    , Digits AS d3
    , Digits AS d4
    , Digits AS d5
在SQLServer 2005中,这个SQL返回一个包含1000000条记录的结果集,从0到999999。
这条语句利用了SQL2005的新功能:CTE (Common Table Expression)
如果当前的数据库是SQL 2000或其他不支持CTE的数据库,则可以将WITH部分的SQL定义为一个视图。

CREATE VIEW .[Digits] AS
SELECT 0 AS Number
UNION SELECT 1
UNION SELECT 2
UNION SELECT 3
UNION SELECT 4
UNION SELECT 5
UNION SELECT 6
UNION SELECT 7
UNION SELECT 8
UNION SELECT 9;

CREATE VIEW [MillionNumbers] AS
SELECT
SELECT (d5.Number * 100000)
    + (d4.Number * 10000)
    + (d3.Number * 1000)
    + (d2.Number * 100)
    + (d1.Number * 10)
    + d0.Number) as Number
FROM
    Digits AS d0
    , Digits AS d1
    , Digits AS d2
    , Digits AS d3
    , Digits AS d4
    , Digits AS d5;


 我们可以用这个方法来生成大批量的测试数据。如:
INSERT INTO MyTest (RecordId, RecordIndex)
SELECT newid(), Number FROM MillionNumbers

用此方法插入数据,要比利用循环快很多倍。

 

我们专注于:西安网站建设,网站制作,网页设计,网站推广,网站改版,网站维护,域名注册,网站空间等服务
[西安玖佰网络http://www.029900.com/] 专业的西安做网站公司。
  • 上一篇文章:
  • 下一篇文章:
  • 网站地图 | 友情链接 | 联系方式 | 文档下载 | 人才招聘 | 付款方式 | 技术论坛
    西安做网站 西安建网站电话:15339190980 / 029-85535950 Email:900c@163.com
    西安玖佰网络 www.029900.com Copyright 2006-2021 版权所有 备案号:陕ICP备08103580号
    西安网站建设 西安做网站公司 西安网站制作 西安做网站的公司
    点击这里给我发消息
    点击这里给我发消息
    点击这里给我发消息
    点击这里给我发消息