求助~~SQL语句(30分)

  • 主题发起人 主题发起人 风中的狼
  • 开始时间 开始时间

风中的狼

Unregistered / Unconfirmed
GUEST, unregistred user!
如表中有一个字段为员工开始工作时间。
如以5年工龄为一个工龄段查询出各工龄段的职工人数。
即:显示数据为:
5年工龄以下:
5-10年工龄:
10-15年工龄:
.....
这个SQL语句该怎么写呢??
数据库为MYSQL数据库
请帮忙,谢谢
 
提供一个思路:
select round((year(getdate)-year(BeginWorkTime))/5) ,count(*)
from table
group by round((year(getdate)-year(BeginWorkTime))/5)
我做过,不过忘了具体语法了。


 
你可以加两个edit,其中放条件。
value:=year(getdate)-year(BeginWorkTime))/5
str:='select * from tablename where (%s between %s%s);
adoquery1.sql.add(format(str,[value,edit1.value,edit2.value]))
 
To Puma Wang
我数据库中的工作时间字段是字符型,(因为只有年和月)
那YERA函数还有用吗??
 
那你就把它转换为日期格式,然后再用year函数啊
 
年的格式要是固定(YYYY)的话,取出来,CAST(substring(BeginworkTime,1,4) AS int)
也行的。
随便你!
 
select name from TableName where year in(select year from TableName1//再这里几你的条件)
 
后退
顶部