台灣最大程式設計社群網站
線上人數
2300
 
會員總數:246575
討論主題:190032
歡迎您免費加入會員
討論區列表 >> MS SQL >> [SQL]找出最靠近平均值的那筆資料
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
[SQL]找出最靠近平均值的那筆資料
價值 : 0 QP  點閱數:1717 回應數:3
樓主

小毓
初學者
466 138
240 91
發送站內信

我想用Sql敘述
 在一串數列中找出最靠近平均值的那筆資料......
  類似這樣.....select * from [table1] where [col1]最靠近avg([col1])的那筆資料

本篇文章發表於2002-08-01 08:55
1樓
回應

阿修羅
捐贈 VP 給 阿修羅 檢舉此回應
select avg(col1) from table

因為平均值不一定在欄位中的某一筆
故建議用程式
select top 1 col1 from table where col1>avg(col1) order by col1 升
select top 1 col1 from table where col1<avg(col1) order by col1 降
再去比較其差最小者

不知有沒有人,有其它的方式
可以分享
本篇文章回覆於2002-08-01 09:05
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小毓
檢舉此回應
ㄟ.............聚合函數.....不可以出現在where子句ㄝ........
本篇文章回覆於2002-08-01 09:09
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

阿修羅
捐贈 VP 給 阿修羅 檢舉此回應
我哩咧

select avg(col1) from table
select top 1 col1 from table where col1<avg(col1) order by col1 降

col1<avg(col1)我這樣的意思是告訴你
avg(col1)這裡的值,要來自於select avg(col1) from table的avg(col1)
這裡啦
自己用變數或其它方式代過來
本篇文章回覆於2002-08-01 09:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.