首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用2列进行表分区?

如何使用2列进行表分区?
EN

Stack Overflow用户
提问于 2018-04-28 10:54:07
回答 2查看 0关注 0票数 0

是否可以使用2列对分区函数进行分区而不是对1进行分区?

考虑一个有3列的表格 :

代码语言:javascript
复制
    ID(int,主键, 
    日期(日期时间), 
    Num(int)

这是我做分区使用1列(日期)的表格:

代码语言:javascript
复制
create PARTITION FUNCTION PFN_MonthRange (datetime)
AS
RANGE left FOR VALUES ('2009-11-30 23:59:59:997',
                       '2009-12-31 23:59:59:997',
                       '2010-01-31 23:59:59:997',
                       '2010-28-02 23:59:59:997',
                       '2010-03-31 23:59:59:997')
go
EN

回答 2

Stack Overflow用户

发布于 2018-04-28 19:31:11

坏消息:分区功能必须在单个列上定义。

好消息:单个列可以是持久计算的列,它是您试图分区的两列的组合。

票数 0
EN

Stack Overflow用户

发布于 2018-04-28 19:57:22

我发现这是一个更简单的解决方案:

代码语言:javascript
复制
select ROW_NUMBER() over (partition by CHECKSUM(value,ID) order by SortOrder) as Row From your_table
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档