SELECT  'YXJ'+ISNULL(CAST(CAST(MAX(RIGHT(C_CODE,12)) AS decimal)+1 AS CHAR), CONVERT(VARCHAR,GETDATE(),112) +'0001') from T_YXJ如题

解决方案 »

  1.   

    試一下這個:SELECT  'YXJ' || nvl(
                      to_char(
                              MAX(
                                  to_number(
                                           substr(C_CODE,length(C_CODE) - 12 + 1)
                                           )
                                  ) + 1
                              ), 
                       to_char(sysdate,'yyyymmdd') || '0001') 
    from T_YXJ
      

  2.   

    SELECT  'YXJ'||nvl(to_char(to_number(MAX(substr(C_CODE,-12)))+1),sysdate+1) 
    from T_YXJ
    试试