校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > SQL查詢排名函數實例

SQL查詢排名函數實例

熱門標簽:400電話辦理泰安 安卡拉地圖標注app 電銷需要外呼系統嗎 互聯網電話外呼系統 千呼電話機器人可以試用嗎 電話機器人怎么代理商 家庭農場地圖標注名稱怎樣起名 我要地圖標注數量有限制嗎 零成本地圖標注賺錢

在實際開發中經常會遇到計算某個字段的排名的情況

如下表:totak_sales

現在又如此要求:按sales的逆序排序,要求添加一個sales_rank字段,顯示排名順序

方法:

復制代碼 代碼如下:
SELECT a1.Name, a1.Sales, COUNT(a2.sales) Sales_Rank
FROM Total_Sales a1, Total_Sales a2
WHERE a1.Sales = a2.Sales or (a1.Sales=a2.Sales and a1.Name = a2.Name)
GROUP BY a1.Name, a1.Sales
ORDER BY a1.Sales DESC, a1.Name DESC;

結果:


或:

復制代碼 代碼如下:
SELECT a1.Name, a1.Sales, COUNT(a2.sales) Sales_Rank
FROM Total_Sales a1, Total_Sales a2
WHERE a1.Sales a2.Sales or (a1.Sales=a2.Sales and a1.Name = a2.Name)
GROUP BY a1.Name, a1.Sales
ORDER BY a1.Sales DESC, a1.Name DESC;

結果:

由上面的方案,我們可以繼續推測,如何選出某項來呢?

比如排名為5的那項內容:

復制代碼 代碼如下:
SELECT * from
(
SELECT a1.Name, a1.Sales, COUNT(a2.sales) Sales_Rank
FROM Total_Sales a1, Total_Sales a2
WHERE a1.Sales a2.Sales or (a1.Sales=a2.Sales and a1.Name = a2.Name)
GROUP BY a1.Name, a1.Sales
ORDER BY a1.Sales DESC, a1.Name DESC
) as tab WHERE tab.sales_rank=5;

當然,此時如果將順序修改為3的話,就不能很好的查找到內容了,這個還是一個弊端,需進行修改,待續

以上就是SQL查詢排名函數實例的全部內容,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • SQL2005 四個排名函數(row_number、rank、dense_rank和ntile)的比較
  • 實例講解sql server排名函數DENSE_RANK的用法
  • SqlServer 2005的排名函數使用小結
  • sql四大排名函數之ROW_NUMBER、RANK、DENSE_RANK、NTILE使用介紹

標簽:東營 黃山 濱州 文山 池州 大同 來賓 新鄉

巨人網絡通訊聲明:本文標題《SQL查詢排名函數實例》,本文關鍵詞  SQL,查詢,排名,函數,實例,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《SQL查詢排名函數實例》相關的同類信息!
  • 本頁收集關于SQL查詢排名函數實例的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 双柏县| 竹北市| 依安县| 徐汇区| 柘荣县| 隆化县| 德钦县| 阳城县| 宜阳县| 阿瓦提县| 金山区| 涟源市| 永寿县| 黑水县| 营山县| 彰武县| 门源| 武汉市| 环江| 贡嘎县| 榆社县| 沾化县| 毕节市| 高州市| 奉化市| 江门市| 余江县| 桃园县| 盐津县| 蒙山县| 璧山县| 增城市| 朝阳县| 郁南县| 大丰市| 天台县| 黔江区| 上饶县| 永康市| 磐安县| 大石桥市|