想做个搜索功能
SQL数据库存了 用户生日信息birthday
想根据 0-16岁 17-23 岁这样的年龄段搜索用户
这个数据查询如何写
我晓得是拿生日和现在的时间比较 如何比较并能查询出结果?
SQL数据库存了 用户生日信息birthday
想根据 0-16岁 17-23 岁这样的年龄段搜索用户
这个数据查询如何写
我晓得是拿生日和现在的时间比较 如何比较并能查询出结果?
SELECT * FROM T WHERE DATEDIFF(YEAR,BIRTHDAY,GETDATE()) BETWEEN 17 AND 23
[17-23]=CASE WHEN DATEDIFF(YEAR,BIRTHDAY,GETDATE()) BETWEEN 17 AND 23 THEN 1 ELSE 0 END
FROM TB
select * from tb where datediff(year , birthday , getdate()) between 0 and 16
select * from tb where datediff(year , birthday , getdate()) between 17 and 23
SELECT [0-16]=SUM(CASE WHEN DATEDIFF(YEAR,BIRTHDAY,GETDATE()) BETWEEN 0 AND 16 THEN 1 ELSE 0 END),
[17-23]=SUM(CASE WHEN DATEDIFF(YEAR,BIRTHDAY,GETDATE()) BETWEEN 17 AND 23 THEN 1 ELSE 0 END)
FROM TB
select * from tb where datediff(year , birthday , getdate()) between 17 and 23
insert into @tb (Borndate)
(select '1996-05-6' union all
select '1996-05-7' union all
select '1996-05-6' union all
select '1996-05-6' union all
select '1985-05-6'
)select * from @tb where DATEDIFF(year,borndate,getdate()) between 0 and 16
select * from @tb where DATEDIFF(year,borndate,getdate()) between 17 and 23