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,這樣就保證了插入的數據永遠排在最後一行。