求助查询SQL语句

china_hefei 2015-11-26 10:14:33
select * from ziliao --用户资料表,id雇员自动编号,kid雇员编号
select * from k_data where id=48 --k_data表为上下班日志表,id自动编号,DATA为上一工作日日期,DATA1为当日工作日期
select * from k_data1 where tid=48 --K_DATA1表为下班时间表,id自动编号,KID为雇员的编号,DATA为上一工作日日期,DATA1为当日工作日期,TID为上下班日志表的ID
select * from k_data2 where tid=48 --k_data2表为上班时间表,id自动编号,KID为雇员的编号,DATA、DATA1为当日工作日期,TID为上下班日志表的ID
select * from jiaqi --JIAQI为请假表,,UID为雇员的ID,startdata为请假开始日期,enddata为结束日期,
--我想查出张三丰该用户在2013-11-26号上班时间表,需要显示内容为
--select [ziliao].[s_name],[k_data1].[d_work1],[k_data2].[work2],[jiaqi].[tianshu] 显示雇员姓名,下班时间,上班时间,请假天数

PS:因为表里面需要存多个内容,所以表必须要分开建,谢谢大家!

下图中是我通过查询分析器查出来的结果及数据库结构!谢谢大家
...全文
102 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tiger_Zhao 2015-11-27
  • 打赏
  • 举报
回复
-- 参数
DECLARE @s_name nvarchar(10)
DECLARE @dt datetime
SET @s_name = N'张三丰'
SET @dt = '2013-11-26'
-- 查询
SELECT [ziliao].[s_name] 雇员姓名,
[k_data1].[d_work1] 下班时间,
[k_data2].[work2] 上班时间,
[jiaqi].[tianshu] 请假天数
FROM ziliao
LEFT JOIN k_data1
ON k_data1.KID = ziliao.KID
AND k_data1.DATA1 = @dt
LEFT JOIN k_data2
ON k_data2.KID = ziliao.KID
AND k_data2.DATA1 = @dt
LEFT JOIN jiaqi
ON jiaqi.UID = ziliao.KID
AND jiaqi.startdata <= @dt
AND jiaqi.enddata >= @dt
WHERE ziliao.s_name = @s_name
Yole 2015-11-27
  • 打赏
  • 举报
回复
能否给些测试数据,ps.最好是用语句给出;实在不行就直接贴文字格式的数据。
wzszy 2015-11-27
  • 打赏
  • 举报
回复
问题来了,楼主你想问什么呢??

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧