数据库考勤表有两个字段,员工id和员工name,查询出某一天第一个签到的人

编程入门 行业动态 更新时间:2024-10-25 13:14:52

数据库考勤表有两个字段,员工id和员工name,查询出某一天第一个签到<a href=https://www.elefans.com/category/jswz/34/1769694.html style=的人"/>

数据库考勤表有两个字段,员工id和员工name,查询出某一天第一个签到的人

之前面试的时候碰到的问题:数据库考勤表有两个字段,员工id和员工name,查询出某一天第一个签到的人,请写出插入和查询语句,没有时间字段

当时我直接懵逼,又问了一句-----没有时间字段???? 没有
然后我:不会

这几天我又想到了这个问题 ,然后想出来了个方法。

方法大致描述:在员工name 字段给每天第一个人加一个年月日的时间标签。然后每次插入时候遍历一遍看是否有这个时间标签,没有的话插入的时候就加上这个时间标签,然后查询的时候根据时间标签模糊查询结果,再对结果字符串处理一下就可以了。

数据库代码如下:

我能想到的最好的办法,有更好的请留言交流

create proc insertproc @id int,@name nvarchar(50) ----存储过程插入
as begin
declare @index nvarchar(50)  
declare @Pdate nvarchar(50)
set @Pdate=convert(nvarchar(12),GETDATE(),12)
select @index=name from Attendance where name like '%'+@Pdate
select @name=case when @index is null then @name+@Pdate else @name end
insert into Attendance(id,name) values(@id,@name)  
endexec insertproc 101,'大龙' exec insertproc 102,'小龙'----查询语句
select id,REPLACE(name,convert(nvarchar(12),GETDATE(),12),'')as name from Attendance where name like '%'+convert(nvarchar(12),GETDATE(),12)

更多推荐

数据库考勤表有两个字段,员工id和员工name,查询出某一天第一个签到的人

本文发布于:2024-02-12 03:57:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1685800.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:的人   员工   第一个   字段   数据库

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!