nvarchar的数据如:'24/08/2008 17:09:23' 怎么转换为 datetime格式???

解决方案 »

  1.   

    DECLARE @n NVARCHAR(50)
    SET @n='24/08/2008 17:09:23'
    SELECT CONVERT(DATETIME,REPLACE(@n,'/',' '),113)
      

  2.   

    create table tb (id nvarchar(50))
    insert into tb values('24/08/2008 17:09:23' )
    goselect cast(substring(id , 7 , 4) + '-' +
           substring(id , 4 , 2) + '-' +
           substring(id , 1 , 2) +
           substring(id , 11 , 9) as datetime)
     from tbdrop table tb/*
                                                           
    ------------------------------------------------------ 
    2008-08-24 17:09:23.000(所影响的行数为 1 行)
    */
      

  3.   

    DECLARE @n NVARCHAR(50)
    SET @n='24/08/2008 17:09:23'
    select convert(varchar(10),convert(datetime,left(@n,10),103),120)+right(@n,9)------------------- 
    2008-08-24 17:09:23(1 row(s) affected)
      

  4.   


    declare @date nvarchar(50)set @date = '24/08/2008 17:09:23'select cast(substring(@date,7 , 4) + '-' + substring(@date , 4 , 2) + '-' + substring(@date , 1 , 2)+ substring(@date , 11 , 9) as datetime)
    ------------------------
    2008-08-24 17:09:23.000
      

  5.   

    DECLARE @n NVARCHAR(50)
    SET @n='24/08/2008 17:09:23'
    SELECT CONVERT(DATETIME, @n ,103)
      

  6.   


    DECLARE @n NVARCHAR(50)
    SET @n='24/08/2008 17:09:23'
    SELECT CONVERT(DATETIME, @n ,103)/*
    -----------------------
    2008-08-24 17:09:23.000
    (1 行受影响)*/