select xingming,ruzhishijian,lizhishijian from d_yuangong
===============================
序号    姓名         入职时间              离职时间     
         
1       张三      2012-4-21 8:30:00        2012-5-21 8:30:00
我想要的效果
===================
序号    姓名         入职时间              离职时间          在职天数
         
1       张三      2012-4-21 8:30:00        2012-5-21 8:30:00  30    

解决方案 »

  1.   

    datediff(day,入职时间 ,离职时间)
      

  2.   

    试过了。没有用。
    有没有完整的语句,包括
    select 开头的。
      

  3.   

    select xingming,ruzhishijian,lizhishijian,datediff(day,ruzhishijian ,lizhishijian) as '在职天数'
     from d_yuangong
      

  4.   

    楼上三位的方法试过了。不管用。
    有没有完整的sql语句
    以select开头。
      

  5.   


    select xingming as 姓名,ruzhishijian as 入职时间,lizhishijian as 离职时间,datediff(day,ruzhishijian,lizhishijian) as 在职天数 from d_yuangong我建过表,试过了,运行成功。
    另外,如果加上序号的话,需要一段循环代码,由于时间关系,不在编写!请原谅!
      

  6.   

    根据姓名排序得到序号。
    select ROW_NUMBER OVER(PARTITION BY xingming) AS 序号,xingming AS 姓名,ruzhishijian AS 入职时间,lizhishijian AS 离职时间,DATEDIFF(DAY,CAST(ruzhishijian AS DATE), CAST(lizhishijian AS DATE)) AS 在职天数 from d_yuangong
      

  7.   

    不好意思啊 楼主,上面代码错了,试试底下的吧select ROW_NUMBER() OVER(order BY xingming) AS 序号,xingming AS 姓名,ruzhishijian AS 入职时间,lizhishijian AS 离职时间,DATEDIFF(DAY,CAST(ruzhishijian AS DATE), CAST(lizhishijian AS DATE)) AS 在职天数 from d_yuangong 
      

  8.   

    select ROW_NUMBER() OVER(order BY xingming) AS 序号,xingming AS 姓名,ruzhishijian AS 入职时间,lizhishijian AS 离职时间,DATEDIFF(DAY,CAST(ruzhishijian AS DATE), CAST(lizhishijian AS DATE)) AS 在职天数 from d_yuangong