例如 
        delcare a varchar(10);
        delcare b varchar(10);
        delcare c varchar(10);
        set a ='2010';
        set b='4';
        set c='10';
        
        我想把它转化为时间类型怎么转? 2010-4-10 ...
        

解决方案 »

  1.   

    select STR_TO_DATE(a*10000+b*100+c,'%Y%m%d') ;
    2010410 这种格式是没办法的.  比如2010111 这是哪个日期?
      

  2.   

    ACMAIN_CHM 大哥,在问你一个问题。
    declare a varchar(20);
    declare b varchar(20);
    set b='afdadf';
    set b='gggggg';
    我要连接2个字符串,
    select concat(a,b) ; 
    无法连接。。我就想用赋值到变量里面连接。
    请问这种情况,我要怎么做··
      

  3.   

    declare a varchar(10);
    declare b varchar(10);
    declare c varchar(10);set a ='2010';
    set b='4';
    set c='10';select date_format( concat(a,'-',b,'-',c), '%Y-%m-%d');+-------------------------------------------------+
    | date_format( concat(a,'-',b,'-',c), '%Y-%m-%d') |
    +-------------------------------------------------+
    | 2010-04-10                                      |
    +-------------------------------------------------+
      

  4.   

     请问用date_format可以直接比较大小吗?
     date_format( concat(a,'-',b,'-',c), '%Y-%m-%d')>  date_format( concat(d,'-',e,'-',f), '%Y-%m-%d')  ???
      

  5.   

     请问用date_format可以直接比较大小吗?
    可以,其实就是字符串比大小。