`
csstome
  • 浏览: 1520922 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

sql2005分区表示例

阅读更多

SQL2005分区表可以在一定程度上解决海量数据的性能问题,比如可以规避高访问量数据区段的io竞争,可以缩小你查询数据范围的索引大小。 msdn参考

http://msdn.microsoft.com/zh-cn/library/ms345146.aspx 一个完整的脚本示例

--drop database dbPartitionTest

--测试数据库  

create database dbPartitionTest

go



use 

dbPartitionTest

go



--增加分组

alter database dbPartitionTest ADD FILEGROUP P200801

alter database dbPartitionTest ADD FILEGROUP P200802

alter database dbPartitionTest ADD FILEGROUP P200803

go

--分区函数

CREATE PARTITION FUNCTION part_Year(datetime)

 AS RANGE LEFT FOR VALUES 

( 

'20080131 23:59:59.997','20080229 23:59:59.997','20080331 23:59:59.997'

) 

go

--增加文件组

ALTER DATABASE dbPartitionTest ADD FILE (NAME = N'P200801',FILENAME = N'c:\tb_P200801.ndf',SIZE = 1MB,MAXSIZE = 500MB,FILEGROWTH = 1MB)TO FILEGROUP P200801

ALTER DATABASE dbPartitionTest ADD FILE (NAME = N'P200802',FILENAME = N'c:\tb_P200802.ndf',SIZE = 1MB,MAXSIZE = 500MB,FILEGROWTH = 1MB)TO FILEGROUP P200802

ALTER DATABASE dbPartitionTest ADD FILE (NAME = N'P200803',FILENAME = N'c:\tb_P200803.ndf',SIZE = 1MB,MAXSIZE = 500MB,FILEGROWTH = 1MB)TO FILEGROUP P200803

go

--分区架构

CREATE PARTITION SCHEME part_YearScheme  AS PARTITION part_Year   TO (P200801,P200802,P200803,[PRIMARY])

go



CREATE TABLE [dbo].t_part  

(name varchar(100) default newid(),date datetime NOT NULL)

ON part_YearScheme (date)

go



--添加测试数据,每天1条

declare @date datetime

set @date='2007-12-31'

while @date<='2008-04-01'

begin

    insert into t_part(date)values(@date)

    set @date=@date+1

end

go

--查询数据分布在哪些分区

select $partition.part_Year(date) as 分区编号,* from t_part  order by date  

--查询数据库文件

go

sp_helpfile 

分享到:
评论

相关推荐

    SQL Server 数据分区最基础的SQL示例

    用来实现SQL Server 数据分区存储的最基础的SQL示例,用来将海量数据分区存储,提高数据库性能。

    oracle表分区实例

    Oracle数据库中的表分区是一种优化大型数据表性能的技术,它将一个大表划分为多个更小、更易管理的部分,每个部分称为一个分区。通过分区,可以提高查询速度、简化管理和维护,以及改善备份和恢复的效率。以下是...

    Microsoft SQL Server 2005技术内幕: T-SQ程序设计.pdf

    该书解释并比较了SQL Server 2000和SQL Server 2005在数据库开发相关问题上的解决方案,深入讨论了SQL Server 2005中新增的T-SQL编程特性,包含了大量的代码示例、表示例和逻辑难题以帮助数据库开发人员和管理员理解...

    hive分区表分通表建表语句详解和例子

    ### Hive 分区表与分桶表详解 #### 一、Hive 分区表概念与应用场景 **分区表**是Hive中的一个重要特性,主要用于优化大数据量下的查询性能。通过将表按照一个或多个列的值划分为不同的部分,可以极大地减少扫描的...

    oracle数据库表按年分区脚本实战例子

    在本例中,我们关注的是范围分区,特别是在时间维度上的应用,即按年进行分区。 范围分区通常基于连续的数值或日期范围,例如年份。这种方式适用于记录有明确时间戳的数据,如订单、交易记录等。以下是一个创建按年...

    oracle自动分区1

    在本例中,如果新分区尚未存在,会将最大分区`PAR_NAME_MAX`分裂,形成新的分区`PAR_NAME`和更新后的`PAR_NAME_MAX`。 7. **分区命名约定**: 分区名称通常基于分区键的值,如日期,通过`CONCAT`函数将表名和日期...

    DB2数据库表分区指引

    首先,确认DB2的安装环境,例如,这里的实例名为"db2inst1",DB2版本为"SQL1005B",表示DB2 v10.5.0.11。通过`db2level`命令可以获取这些信息。 2. **数据备份**: 在进行任何重大操作之前,如表分区,通常需要...

    oracle表分区

    四、创建分区表示例 例如,创建一个范围分区的销售表,根据销售日期进行分区: ```sql CREATE TABLE sales_range (salesman_id NUMBER(5), salesman_name VARCHAR2(30), sales_amount NUMBER(10), sales_date DATE)...

    经典SQL语句大全

    “where 1=1” 是表示选择全部 “where 1=2”全部不选, 如: if @strWhere !='' begin set @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' + @strWhere end else begin set @strSQL = '...

    SQLServer 双机热备(纯软镜像) 详细图文配置教程(ServHA Mirror)

    在安装MS SQLServer之前,需要在两台服务器上各准备一个分区用于做镜像盘(以下简称“X盘”),其大小应能满足MS SQLServer实例数据的存放需求。由于镜像后X盘的大小将以较小的那个为准,因此建议两台服务器上的X盘...

    sql server 2000数据库常有查询语句

    - `PARTITION BY` 子句用于将结果集划分为多个分区,本例中按`mat12id`进行分区。 - `ORDER BY` 子句定义了每个分区内部的排序规则。 - `WHERE RN = 1` 表示只选择每个分区的第一条记录。 ### 2. 查询从多少行到...

    SQL中分组排序问题

    - `ORDER BY`则是定义了在每个分区内的行逻辑顺序,我们用`E.zpcj DESC`来表示按总评成绩降序排列。 完整的查询语句如下: ```sql SELECT LEFT(O.xq, 9) AS 学年, RIGHT(O.xq, 2) AS 学期, O.kh AS 课号, E....

    mysql中如何判断是否支持分区

    表示支持分区。 或者通过: SHOW PLUGINS; 显示所有插件,如果有partition ACTIVE STORAGE ENGINE GPL 插件则表明支持分区 ps:什么是数据库分区 前段时间写过一篇关于mysql分表的的文章,下面来说一下什么是数据库...

    全国地区名称SQL数据

    在本例中,我们有一个名为"全国地区数据.sql"的压缩包文件,这很可能是用来导入到SQL数据库的一个文件,里面包含了创建表的SQL语句以及相应的数据插入语句。 1. **SQL语言基础**: SQL(Structured Query Language)...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    作者通过总结各自多年的软件开发和教学培训经验,与大家分享了掌握Oracle SQL所独有的丰富功能的技巧所在,内容涵盖SQL执行、联结、集合、分析函数、子句、事务处理等多个方面。读者可以学习到以下几个方面的技巧:...

    Hive SQL语法总结

    创建外部表示例: ```sql CREATE EXTERNAL TABLE page_view ( viewTime INT, userid BIGINT, page_url STRING, referrer_url STRING, ip STRING COMMENT 'IP Address of the User', country STRING COMMENT '...

    数据库操作语句大全(sql)

    “where 1=1” 是表示选择全部 “where 1=2”全部不选, 如: if @strWhere !='' begin set @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' + @strWhere end else begin set @strSQL = '...

    使用SQL Server计算地理距离

    在本例中,我们关注的是`geography`类型,它用于表示地球表面的几何对象,如点、线和多边形。`geography`数据类型支持WGS 84(世界大地测量系统)坐标系,这是一个广泛使用的全球参考系统,用于定义地理位置。 计算...

Global site tag (gtag.js) - Google Analytics