1. 怎么让sqlServer的id按照数字大小顺序排序
可以通过 “order by 字段名 asc (desc)” 命令进行排序。
sql:select * from tablename order by id DESC;
用 DESC 表示按倒序排序(即:从大到小排序) ,用 ACS 表示按正序排序(即:从小到大排序)。
2. sqlserver 排序规则的问题
alter table [表名] alter column [列名] [类型] COLLATE Chinese_PRC_CI_AS
[类型] 最好选用 nvarchar,nchar
存储数据时如果出现乱码,可能情况如下:
1.提交到数据库的字符是乱码
2. 数据库排序规则不支持该字符集
3.数据库表字段的类型设计不合适,最好选用nvarchar,nchar
4.插入字符串时强制存储格式 insert into [表名] ([字段1]) values(N'字符串'),最好在字符串前指定 N
3. sql server 怎么排序
排序可以是升序的 (ASC),也可以是降序的 (DESC)。如果未指定是升序还是降序,就假定为 ASC。
下面的查询返回按 ProctID 升序排序的结果:
代码如下 复制代码
USE AdventureWorks2008R2;
GO
SELECT ProctID, ProctLine, ProctModelID
FROM Proction.Proct
ORDER BY ProctID;
如果 ORDER BY 子句中指定了多个列,则排序是嵌套的。下面的语句先按产品子类别降序排序 Proction.Proct 表中的行,然后在每个产品子类别中按 ListPrice 升序排序这些行。
代码如下 复制代码
USE AdventureWorks2008R2;
GO
SELECT ProctID, ProctSubcategoryID, ListPrice
FROM Proction.Proct
ORDER BY ProctSubcategoryID DESC, ListPrice;
问题
同一个查询的结果集为什麽有时候是按他想要的顺序排列,有时候又不是,或者是在SQL2000里是这个顺序,到了SQL2005/2008又是那个顺序?
其实,只要语句里没有指定“order by”,SQLSERVER并不会按照顺序返回的。有可能你的表里有一个字段已经建立了索引
你想结果集按照那个建立了索引的字段排序,那么你不指定“order by”是没有问题的,因为表的存储顺序就是按照那个字段
的顺序排好序了,所以可以不指定“order by”,但是如果你没有在想排序的那个字段建立索引,或者在SQL2000里建立了
索引,而在SQL2005/2008里没有建立索引,那么就要明确地用“order by”指定。如果你没有指定,哪怕一模一样的查询,
结果集顺序这一次和上一次不一样是很正常的。
4. SQL server中如何更改排序规则
1、首先新建一个数据库,如图为test。
5. 如何用sqlserver 改变一个列按一定的顺序排列,
试试这个,能解决你的问题:
假设表名为tablename
--加自增列tempCol ,101为起始值,1为自增值,更新之后删掉这列
alter table tablename add tempCol int identity(101,1)。
6. sqlserver数据表排序问题
不晓得你这个NewId()方法是怎么写的,我自己也写过一个类似的方法,思路是这样的:
首先,获取数据表的行数。
然后在NewId()方法里int id=行数+1,这样就保证了插入的数据永远排在最后一行。