⑴ 用sql語句實現年齡分段統計
先將年齡除10取整
select floor(年齡/10) as age from 表
再根據年齡整數分組統計
select age ,count(age) from
(
select floor(年齡/10) as age from 表
)
group by age
這樣基本效果就出來了,達到樓主的要求就要加如函數計算了
sql語法
select convert(varchar,age*10)+'--'+convert(varchar,(age+1)*10) ,count(age) from
(
select floor(年齡/10) as age from 表
)
group by age
oracle語法
select age*10 || '--'|| (age+1)*10 ,count(age) from
(
select floor(年齡/10) as age from 表
)
group by age
⑵ sql 向上/向下取整的函數 是什麼,
向上取整:select ceiling(45.88) 向下取整:select floor(45.99) 返回最接近的函數:
select ROUND(23.3222,3)
⑶ SQL上取整和下取整分別是哪個函數
FLOOR 返回小於或等於指定數值表達式的最大整數。
CEILING 返回大於或等於指定數值表達式的最小整數。
round是四捨五入
⑷ sql 計算年齡
用getdate()獲得今天的日期,再用datediff算的年數
也可以直接取年份相減啊
⑸ SQL語句如何根據出生日期計算年齡
第一種:
一張人員信息表裡有一人生日(Birthday)列,跟據這個列,算出該人員的年齡
datediff(year,birthday,getdate())
例:birthday = '2003-3-8'
getDate()= '2008-7-7'
結果為:5
這樣結果是會返回該人員的大概年齡,但不精確.不會精確到月或日.
按照上面測試的日期,該人員的實際年齡應該還不滿5歲。在需要精確年齡的時候,就會有錯.
第二種:
FLOOR(datediff(DY,birthday,getdate())/365.25)
FLOOR函數:
FLOOR(expr) 返回小於或等於expr的最大整數.FLOOR(1.1)返回1,FLOOR(-1.1)返回-2,FLOOR(1)返回1
這樣就可以精確算出,該人員當前實際年齡了.
測試:
birthday = '2000-7-8'
getdate()= '2007-7-7'
算出結果為:6
在Oracle中,要獲得日期中的年份,例如把sysdate中的年份取出來。
一種常用的方法是:to_number(to_char(sysdate,'yyyy'))
還有一種更好的方法,那就是使用oracle提供的Extract函數,使用方法是:
extract(year from sysdate) ,此方法獲得的結果是數值型的 ,這種方法省掉了類型轉換,更加簡潔。
相應的,要取得月份或日,可以用extract (month from sysdate) 和extract (day from sysdate)
⑹ sql 保留一位小數 並且向下取 怎麼弄
DECLARE@fFLOAT=0.771014415253685
SELECTFLOOR(@F*10)*1.0/10
如上 你可以先乘以10(因為一位小數),再用向下取整的函數floor,最後記得*1.0/10 即除以開頭乘的10
⑺ sql計算年齡
當然報錯了
因為你沒有制定查詢條件,
現在寫的語句select查詢出Sales.Decile表中所有記錄,而你的update是等於(意思更新一條記錄),所以報錯了,應該指定where條件
⑻ SQL 上取整和下取整分別是哪個函數
floor(100.9) = 100
floor 返回小於或等於所給數字表達式的最大整數。
ceiling(100.1) = 101
ceiling 返回大於或等於所給數字表達式的最小整數。
已測。是正確的
你可以
print floor(100.9)
print ceiling(100.1)
測試
⑼ 如何實現在SQL2000中年齡欄位根據生日欄位自動計算填寫
根據身份證號或者出生年月日來求年齡,非常簡單。我用的代碼是:
delphi代碼:
dqnl:=round((date-csrq)/365.5);
當前年齡:=取整函數((電腦上的日期-出生日期)除以365.5);
年齡編輯框文本:=intTostr(dqnl);intTostr是delphi的整數轉換為字元串函數。
⑽ SQL AVG函數取整問題
SELECT 個人信息.所屬組合,ROUND(Avg(個人信息.年齡),0) AS 平均年齡, Max(個人信息.年齡) AS 年齡最大值
FROM 個人信息
GROUP BY 個人信息.所屬組合