學(xué)習(xí)啦 > 學(xué)習(xí)英語 > 專業(yè)英語 > 計算機英語 > 數(shù)據(jù)庫中top的用法

數(shù)據(jù)庫中top的用法

時間: 長思709 分享

數(shù)據(jù)庫中top的用法

  數(shù)據(jù)庫中top的用法的用法你知道嗎?下面小編就跟你們詳細(xì)介紹下數(shù)據(jù)庫中top的用法的用法,希望對你們有用。

  數(shù)據(jù)庫中top的用法的用法如下:

  在編寫程序中,我們可能遇到諸如查詢最熱門的5篇文章或返回滿足條件的n條記錄的情況,在SQL語言中,可以使用TOP關(guān)鍵字來實現(xiàn)。

  TOP關(guān)鍵字在SQL語言中用來限制返回結(jié)果集中的記錄條數(shù),其使用方法有兩種形式,下面做以詳細(xì)的介紹:

 ?。?)返回確定數(shù)目的記錄個數(shù)

  語法格式: SELECT TOP n <列名表> FROM <表名> [查詢條件]

  其中,n為要返回結(jié)果集中的記錄條數(shù)

 ?。?)返回結(jié)果集中指定百分比的記錄數(shù)

  語法格式: SELECT TOP n PERCENT <列名表> FROM <表名> [查詢條件]

  其中,n為所返回的記錄數(shù)所占結(jié)果集中記錄數(shù)目的百分比數(shù)

  舉例說明:

  假設(shè)數(shù)據(jù)庫中有一個表存儲的為學(xué)生的信息(student):

 ?。?)SELECT TOP 20 * FROM student --查詢前20名學(xué)生的信息

 ?。?)SELECT TOP 20 * PERCENT FROM student --查詢學(xué)生表中前20%的學(xué)生信息

  在具體使用過程中,可以結(jié)合條件子句和排序子句(如何進行排序)等實現(xiàn)較為豐富的功能,如:

 ?。?)查詢年齡(sage)大于23的前20名學(xué)生的信息

  查詢語句為:SELECT TOP 20 * FROM student WHERE sage > 23

 ?。?)查詢年齡較為大的前20名學(xué)生的信息

  查詢語句為: SELECT TOP 20 * FROM student ORDER BY sage DESC

  在假設(shè)有一個表為新聞表(news),其列名定義如下:

  ID 新聞編號, 整數(shù)型 自增字段

  Title 新聞標(biāo)題 , 字符串型(varchar)

  Content 新聞內(nèi)容,Text型

  Hits 點擊次數(shù), 整數(shù)類型

  AddDateTime 添加時間 ,字符串(YYYY-MM-DD)

  則要求查詢:

 ?。?)查詢最新10條新聞,只列出新聞標(biāo)題和添加時間

  SELECT TOP 10 Title, AddDateTime FROM News ORDER BY AddDateTime DESC

  說明:如果新聞增加時是按時間發(fā)生的先后順序添加的話,也可以按ID來排序(因為ID為自增字段,ID越大的應(yīng)越新),即:

  SELECT TOP 10 Title, AddDateTime FROM News ORDER BY ID DESC

 ?。?)查詢最熱門的8條新聞的標(biāo)題和點擊次數(shù)

  查詢語句為: SELECT TOP 8 Title, Hits FROM News ORDER BY Hits DESC

543230