//搜索前10條記錄?
在晉源等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需策劃設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站設(shè)計(jì),成都全網(wǎng)營(yíng)銷推廣,外貿(mào)網(wǎng)站建設(shè),晉源網(wǎng)站建設(shè)費(fèi)用合理。
select * from table limit 10?
//倒序排列----以id做排序
select * from table order by id desc?
//正序排列----以id號(hào)排序
select * from table order by id asc?
//搜索前10條記錄并倒序排列?
select * from table order by id desc limit 10?
//limit 要放在后面
正序 ASC
倒序DESC
根據(jù)你的題意大概可以這樣
select ?頂部5個(gè) ?列名 ?來(lái)自 ?表名 ?排序 ?bookID ?倒序
select?top?5?bookID?from?表名?order?by?bookID?DESC
因?yàn)閎ookID 是自增的,所以直接根據(jù)id來(lái)查倒序的最上面5個(gè),就是最新的(自增的最大值就是最新值)
排序可以是升序的 (ASC),也可以是降序的 (DESC)。如果未指定是升序還是降序,就假定為 ASC。
下面的查詢返回按 ProductID 升序排序的結(jié)果:
代碼如下 復(fù)制代碼
USE AdventureWorks2008R2;
GO
SELECT ProductID, ProductLine, ProductModelID
FROM Production.Product
ORDER BY ProductID;
如果 ORDER BY 子句中指定了多個(gè)列,則排序是嵌套的。下面的語(yǔ)句先按產(chǎn)品子類別降序排序 Production.Product 表中的行,然后在每個(gè)產(chǎn)品子類別中按 ListPrice 升序排序這些行。
代碼如下 復(fù)制代碼
USE AdventureWorks2008R2;
GO
SELECT ProductID, ProductSubcategoryID, ListPrice
FROM Production.Product
ORDER BY ProductSubcategoryID DESC, ListPrice;
問(wèn)題
同一個(gè)查詢的結(jié)果集為什麼有時(shí)候是按他想要的順序排列,有時(shí)候又不是,或者是在SQL2000里是這個(gè)順序,到了SQL2005/2008又是那個(gè)順序?
其實(shí),只要語(yǔ)句里沒(méi)有指定“order by”,SQLSERVER并不會(huì)按照順序返回的。有可能你的表里有一個(gè)字段已經(jīng)建立了索引
你想結(jié)果集按照那個(gè)建立了索引的字段排序,那么你不指定“order by”是沒(méi)有問(wèn)題的,因?yàn)楸淼拇鎯?chǔ)順序就是按照那個(gè)字段
的順序排好序了,所以可以不指定“order by”,但是如果你沒(méi)有在想排序的那個(gè)字段建立索引,或者在SQL2000里建立了
索引,而在SQL2005/2008里沒(méi)有建立索引,那么就要明確地用“order by”指定。如果你沒(méi)有指定,哪怕一模一樣的查詢,
結(jié)果集順序這一次和上一次不一樣是很正常的。