表中有2个字段,year 和month (年和月) int 的
如何取回像“200605”或者"200612"也就是让月份自动增加"0"

解决方案 »

  1.   

    写错了,应该是month
    if(Month.Length==1)Month="0"+Year;
      

  2.   

    SQLServer?还是Oracle?
    S:
    SELECT CAST(year AS VARCHAR) + RIGHT('00' + CAST(month AS VARCHAR), 2)O:
    SELECT TO_CHAR(year) FROM DUAL || TO_CHAR(month, '00') FROM DUAL
      

  3.   

    谢谢Reeezak(坚持信念) 等以上朋友SELECT (CAST(uyear AS VARCHAR) + RIGHT('00' + CAST(ap_num AS VARCHAR), 2)) as ym  from  hr_pr_data where ym >='200601'
    为什么这样不行?
      

  4.   

    SELECT (CAST(uyear AS VARCHAR) + RIGHT('00' + CAST(ap_num AS VARCHAR), 2)) as ym  from  hr_pr_data where ym >='200601'
    为什么这样不行?这是肯定不行的,你的ym只是一个别名而已,并不是实际的列,所以,可以改成以下两种形式1、
    SELECT (CAST(uyear AS VARCHAR) + RIGHT('00' + CAST(ap_num AS VARCHAR), 2)) as ym  from  hr_pr_data where uyear >= 2006 AND ap_num >= 12、
    SELECT ym FROM
    (SELECT (CAST(uyear AS VARCHAR) + RIGHT('00' + CAST(ap_num AS VARCHAR), 2)) as ym  from  hr_pr_data) AS A
    where ym >='200601'