mysql查詢年齡段的sql

一、查詢小於20歲的人信息sql

String hql20="SELECT id, birthday,DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(birthday, '%Y') - (DATE_FORMAT(NOW(), '00-%m-%d') < DATE_FORMAT(birthday, '00-%m-%d')) AS age   from hrd_staff  where status=? and company=? group by id having age< ?";

二、查詢小於20歲的總人數code

SELECT  count(*),id, birthday,DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(birthday, '%Y') - (DATE_FORMAT(NOW(), '00-%m-%d') < DATE_FORMAT(birthday, '00-%m-%d')) AS age   from hrd_staff  where status=0 and company='8a2c1b1a540dcdb701540f0ea3200006' group by age having age<20

不詳細看sql 可能看不到區別,可是咱們你詳細看能發現 group by 一個是id 一個是age 由於id 不可能重複因此是全部人,而group by age 就是按照age 分組 在獲取count(*)的值相加就是小於20歲的人的的總數class

相關文章
相關標籤/搜索