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

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式