select 姓名,cast(身份证号 as char(18)) as [身份证号]在查询分析器中操作,然后导成csv文件,可是身份证号变成科学计数法了,如何办?
--------------------------
结果存的是csv文件,就是纯文本呀,我用记事本打开,发现确实是身份证号,并不科学计数法表示,可是用excel打开后就是科学计数法了,如何让excel正确显示身份证号呀?

解决方案 »

  1.   

    数据库中身份证号的字段类型是什么?
    可以尝试
    '''' + cast(身份证号 as char(18))
      

  2.   

    同意楼上可以适用 在列前 加几个特殊字符...如'##'
    在excel中再修改
      

  3.   

    数据库中身份证号的字段类型是什么?
    可以尝试
    '''' + cast(身份证号 as char(18))
    -----------------
    试了不行的
      

  4.   

    这有一个查出生日期列子参照一下
    declare @IDCard varchar(20)
    select @IDCard ='412958980509001'select 
    case len(@IDCard) 
    when 15 then cast('19' + substring(@IDCard,7,2)+'-' + substring(@IDCard,9,2) + '-' + substring(@IDCard,11,2) as datetime)
    when 18 then cast(substring(@IDCard,7,4)+'-' + substring(@IDCard,11,2) + '-' + substring(@IDCard,13,2) as datetime)
    else null
    end as 出生日期
      

  5.   

    呵呵,我也遇到了这个问题,又不可以在前面加'号,客户不同意.只好采用模板的形式,把Excel模板里身份证那一栏设成文本型,再把数据填上去