你所说的标示字段是不是自动编号 是的话就不要重新排序了 你要想重新排序就拿别的字段做主键 然后ORDER BY
/*
用定义排序规则(Chinese_PRC_CS_AS_WS、Chinese_PRC_BIN)来区分,
介绍两种排序规则:
第一个Chinese_PRC所属区域(中文(香港特别行政区),中文(中华人民共和国),中文(新加坡))
CS(CaseSensitivity缩写):CS 指定区分大小写,CI 指定不区分大小写.
AS(AccentSensitivity缩写):AS 指定区分重音,AI 指定不区分重音.
WS(WidthSensitivity缩写):WS 指定区分大小写,Omitted 指定不区分大小写.(区分全角半角)
BIN:指定使用二进制排序次序.
KanatypeSensitive:KS 指定区分假名类型,Omitted 指定不区分大小写.
_BIN 二进制排序
_CI_AI 不区分大小写、不区分重音、不区分假名类型、不区分宽度
_CI_AI_WS 不区分大小写、不区分重音、不区分假名类型、区分宽度
_CI_AI_KS 不区分大小写、不区分重音、区分假名类型、不区分宽度
_CI_AI_KS_WS 不区分大小写、不区分重音、区分假名类型、区分宽度
_CI_AS 不区分大小写、区分重音、不区分假名类型、不区分宽度
_CI_AS_WS 不区分大小写、区分重音、 不区分假名类型、区分宽度
_CI_AS_KS 不区分大小写、区分重音、区分假名类型、不区分宽度
_CI_AS_KS_WS 不区分大小写、区分重音、区分假名类型、区分宽度
_CS_AI 区分大小写、不区分重音、 不区分假名类型、不区分宽度
_CS_AI_WS 区分大小写、不区分重音、不区分假名类型、区分宽度
_CS_AI_KS 区分大小写、不区分重音、区分假名类型、不区分宽度
_CS_AI_KS_WS 区分大小写、不区分重音、区分假名类型、区分宽度
_CS_AS 区分大小写、区分重音、不区分假名类型、不区分宽度
_CS_AS_WS 区分大小写、区分重音、不区分假名类型、区分宽度
_CS_AS_KS 区分大小写、区分重音、区分假名类型、不区分宽度
_CS_AS_KS_WS 区分大小写、区分重音、区分假名类型、区分宽度
*/
在我的Blog里有举用法例子
你这个问题,本人以前就遇到过,目前按照时间排序(order by 时间)输出是最好的办法.库里有多乱你也不用看啊!
----
第二种办法:根据了一位数据库大师的推导方式,A -R,那么(A,B)-R
,所以建立复合聚集主键就可以了.
如果非要创建单列主键,那么ID 最好不要创建 唯一约束,或是单列主键.如果不信你自己多试试.
如下有代码 你可以试试:
----------
USE [LEdwin]
GO
SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER ON
DROP TABLE [dbo].[A]
CREATE TABLE [dbo].[A](
[ID] [uniqueidentifier] NOT NULL,
[CreateDate] [datetime] NOT NULL
) ON [PRIMARY]
ALTER TABLE A WITH NOCHECK
ADD CONSTRAINT [PK_A] PRIMARY KEY CLUSTERED
(CreateDate ASC,ID ASC)
CREATE NONCLUSTERED INDEX C_CreateDate ON A(CreateDate ASC)
WITH
--CREATE UNIQUE NONCLUSTERED INDEX U_NONC_ID ON A(ID)
--WITH
declare @cnt int set @cnt=0
declare @Monday datetime set @Monday=getdate()
while @cnt10
begin
insert into A(ID,CreateDate) values (newid(),dateadd(s,@cnt,@Monday))
end
SELECT [ID],[CreateDate] FROM [LEdwin].[dbo].[A]
--------
执行结果:
这样直接查看就可以.
以上就是土嘎嘎小编为大家整理的sqlserver排重相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!