簡體   English   中英

如何獲得包含帶數字的字符串的列的平均值?

[英]How to get the average of a column that contains a string with a number?

我有一個表,其中包含一個包含名稱列表的列和一個級別列表的列。 級別列的數據類型為字符串。 我正在嘗試獲取我的人員列表的平均水平。 所以下表應該填充2.8級((2+4+2+2+4+3)/6)->的平均水平,我希望它顯示低於平均水平的integer - 因此:'2級' 應該是結果。

由於這些是字符串而不是數字,如何添加級別?

表A

第 1 列 第 2 欄
喬伊 2級
雷切爾 4級
羅斯 2級
菲奧比 2級
莫妮卡 4級
錢德勒 3級

結果:2級

它可能會有所不同,具體取決於您使用的 dbms:

SELECT  AVG(CAST(REGEXP_REPLACE(column2, 'level ', '') as INTEGER))
FROM TABLE

或者正如評論中提到的,您可以使用“oreplace”:

SELECT  AVG(CAST(OREPLACE(column2, 'level ', '') as INTEGER))
FROM TABLE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM