sqlserver序列表,sqlserver介绍

SQLServer如何编辑200行以后的行。 如何代序显示列表。 如何选定1000~2 000行进

可以设定前n行,方法:工具,选项,对象资源管理,命令,编辑前n行,填写,确定。

成都创新互联公司-专业网站定制、快速模板网站建设、高性价比王屋网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式王屋网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖王屋地区。费用合理售后完善,10多年实体公司更值得信赖。

sqlserver排序

排序可以是升序的

(ASC),也可以是降序的

(DESC)。如果未指定是升序还是降序,就假定为

ASC。

下面的查询返回按

ProductID

升序排序的结果:

代码如下

复制代码

USE

AdventureWorks2008R2;

GO

SELECT

ProductID,

ProductLine,

ProductModelID

FROM

Production.Product

ORDER

BY

ProductID;

如果

ORDER

BY

子句中指定了多个列,则排序是嵌套的。下面的语句先按产品子类别降序排序

Production.Product

表中的行,然后在每个产品子类别中按

ListPrice

升序排序这些行。

代码如下

复制代码

USE

AdventureWorks2008R2;

GO

SELECT

ProductID,

ProductSubcategoryID,

ListPrice

FROM

Production.Product

ORDER

BY

ProductSubcategoryID

DESC,

ListPrice;

问题

同一...排序可以是升序的

(ASC),也可以是降序的

(DESC)。如果未指定是升序还是降序,就假定为

ASC。

下面的查询返回按

ProductID

升序排序的结果:

代码如下

复制代码

USE

AdventureWorks2008R2;

GO

SELECT

ProductID,

ProductLine,

ProductModelID

FROM

Production.Product

ORDER

BY

ProductID;

如果

ORDER

BY

子句中指定了多个列,则排序是嵌套的。下面的语句先按产品子类别降序排序

Production.Product

表中的行,然后在每个产品子类别中按

ListPrice

升序排序这些行。

代码如下

复制代码

USE

AdventureWorks2008R2;

GO

SELECT

ProductID,

ProductSubcategoryID,

ListPrice

FROM

Production.Product

ORDER

BY

ProductSubcategoryID

DESC,

ListPrice;

问题

同一个查询的结果集为什麽有时候是按他想要的顺序排列,有时候又不是,或者是在SQL2000里是这个顺序,到了SQL2005/2008又是那个顺序?

其实,只要语句里没有指定“order

by”,SQLSERVER并不会按照顺序返回的。有可能你的表里有一个字段已经建立了索引

你想结果集按照那个建立了索引的字段排序,那么你不指定“order

by”是没有问题的,因为表的存储顺序就是按照那个字段

的顺序排好序了,所以可以不指定“order

by”,但是如果你没有在想排序的那个字段建立索引,或者在SQL2000里建立了

索引,而在SQL2005/2008里没有建立索引,那么就要明确地用“order

by”指定。如果你没有指定,哪怕一模一样的查询,

结果集顺序这一次和上一次不一样是很正常的。

sqlserver数据表排序问题

你这个问题,本人以前就遇到过,目前按照时间排序(order by 时间)输出是最好的办法。库里有多乱你也不用看啊!

----

第二种办法:根据了一位数据库大师的推导方式,A -R,那么(A,B)-R

,所以建立复合聚集主键就可以了。

如果非要创建单列主键,那么ID 最好不要创建 唯一约束,或是单列主键。如果不信你自己多试试。

如下有代码 你可以试试:

----------

USE [LEdwin]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

DROP TABLE [dbo].[A]

GO

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)

GO

CREATE NONCLUSTERED INDEX C_CreateDate ON A(CreateDate ASC)

WITH

FILLFACTOR=50

GO

--CREATE UNIQUE NONCLUSTERED INDEX U_NONC_ID ON A(ID)

--WITH

--FILLFACTOR=50

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))

set @cnt=@cnt+1

end

SELECT [ID],[CreateDate] FROM [LEdwin].[dbo].[A]

--------

执行结果:

429BE969-2F91-4603-B0C5-D38CCDA7C069 2012-11-17 09:11:50.513

0D5B03D1-5739-4202-A875-95982A986751 2012-11-17 09:11:51.513

AC02C770-9FB3-44E9-AA14-00E80B473EFB 2012-11-17 09:11:52.513

1FEDAA92-95C6-437A-8D84-7DA9F9914501 2012-11-17 09:11:53.513

FFB334F6-BBB2-431D-8856-557BA876BA63 2012-11-17 09:11:54.513

8BA91F63-9643-412C-9F4D-F3DD23E9C4AB 2012-11-17 09:11:55.513

4DCB295D-4B3C-4FEA-9DAB-7DFFCC6BD3312012-11-17 09:11:56.513

EBDB669D-1D99-4BC8-90B1-04D46AA8D876 2012-11-17 09:11:57.513

FFD9DFF1-14DF-4D18-9888-3E67A5E81614 2012-11-17 09:11:58.513

C22B1E6C-E1F8-4901-A8B7-A5F7EB9551F0 2012-11-17 09:11:59.513

----

这样直接查看就可以。

sqlserver 多个条件排序问题?

看你状态用的什么数据类型了。要是用的字符型,那升序降序都是按照字母序。升序就asc降序就desc

order by 状态 desc 截止时间 asc


当前标题:sqlserver序列表,sqlserver介绍
转载来源:http://scyanting.com/article/hdeiec.html