sql语句的查询 连续日期 比较绕脑的
现在有张表:姓名任职日期结束任职日期任职年数任职张三2001-10-132004-10-133书记张三2003-10-12004-11-131主任李四2001-10-13...
现在有张表 :
姓名 任职日期 结束任职日期 任职年数 任职
张三 2001-10-13 2004-10-13 3 书记
张三 2003-10-1 2004-11-13 1 主任
李四 2001-10-13 2004-10-13 3 书记
李四 2004-10-13 2007-10-13 3 主任
我现在想查询 出 任书记和主任 连续任职年数大于3年的(连续任职 是任职开始时间 在 上一次任职时间段之间的算为连续任职)
查询结果如下:
1.张三
2.李四
或者更复杂点的
姓名 任职年总数 详细记录
2001-10-13 2004-10-13 3 书记
张三 3
2003-10-1 2004-11-13 1 主任
---------------------------------------
2001-10-13 2004-10-13 3 书记
李四 6
2004-10-13 2007-10-13 3 主任
有什么好的思路吗?用winform C#的dataGridView1做
1.sql语句怎么查询吗
2.如果不好查询怎么 处理啊? 思路
谢谢 展开
姓名 任职日期 结束任职日期 任职年数 任职
张三 2001-10-13 2004-10-13 3 书记
张三 2003-10-1 2004-11-13 1 主任
李四 2001-10-13 2004-10-13 3 书记
李四 2004-10-13 2007-10-13 3 主任
我现在想查询 出 任书记和主任 连续任职年数大于3年的(连续任职 是任职开始时间 在 上一次任职时间段之间的算为连续任职)
查询结果如下:
1.张三
2.李四
或者更复杂点的
姓名 任职年总数 详细记录
2001-10-13 2004-10-13 3 书记
张三 3
2003-10-1 2004-11-13 1 主任
---------------------------------------
2001-10-13 2004-10-13 3 书记
李四 6
2004-10-13 2007-10-13 3 主任
有什么好的思路吗?用winform C#的dataGridView1做
1.sql语句怎么查询吗
2.如果不好查询怎么 处理啊? 思路
谢谢 展开
2个回答
2013-06-26
展开全部
1。他有个字段是任职时间的 这个是不是还要和现在的时间比较啊 ?2。看你的描述 张三当主任的时间是一年 ,书记任职是三年 这个也算是任职三年的,也就是说无论职务 只要是任职三年的都算 ...那么你的第一种结果 和 你的复杂的 结果的sql语句一定不一样 。。。因为你的复杂的那个出现了 主任这个结果....这样把先给你个 sql 你看下如果是 迄今为止 任职的无论书记或者主任 满三年的 ......sql:-----select 姓名from 表 where 任职年数>3 and 任职结束日期<现在时间 复杂点的select 姓名,任职年数, (任职日期&' '&到职日期&' '&职位)as 详细信息 from 表 where
任职结束日期<现在时间 and 任职年数>3 (没测试 可能有错误 反正也差不多)
任职结束日期<现在时间 and 任职年数>3 (没测试 可能有错误 反正也差不多)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-26
展开全部
解决问题应该不难 但你描述得不清楚1.书记和主任可以同时任吗? 你说“我现在想查询 出 任书记和主任” 你想查的是同时任书记和主任吗?还是怎么的。。。2.什么叫连续, 张三的书记任到2004-10-13 主任到2004-11-13 只要交叉了就是连续?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询