回答

收藏

将Excel日期序列号转换为常规日期

技术问答 技术问答 519 人阅读 | 0 人回复 | 2023-09-14

我在具有Excel Date序列号Date的csv文件中得到了名为DateOfBirth的列
& ]* O+ ^4 ]) P9 c3 ?% O) }: L例子:# P& ]& {5 x) Z( U+ h
  364644 @- ^( q- c% @9 Z1 c5 \% J
  371043 e# K# @) S; X" q( V  K1 V9 @
  35412
- W; L/ j9 u5 M% C' e% y; ?0 \( ^6 r8 d$ F2 {
当我在excel中格式化单元格时,这些将转换为
. |: d9 g6 ]6 B9 b  36464 => 1/11/1999
% W: k6 Y. @* S( t  37104 => 1/08/2001, ]! {$ C6 T% W. x& B' O0 L: X3 y; ]
  35412 => 13/12/1996
& }/ ]& p4 f6 E' e, V% n) ~7 A) m* ~* A) ~9 E
我需要在SSIS或SQL中进行此转换。如何做到这一点?
0 A2 L1 W0 D# }0 L+ w                - y9 `$ X$ y4 }' Y- a  e
解决方案:/ e* D+ O3 r2 I1 B, M5 F8 }! ~: R3 k" l
               
# a- N1 u7 U/ S3 L6 j; \4 N
, `* e: i0 V, h% J- L; E
2 G. M8 I. O9 B4 i4 J: p" ]. g                在SQL中:
, |7 c  l& }% D5 {# hselect dateadd(d,36464,'1899-12-30')' [2 y0 G/ Q  ~. c0 b5 q
-- or thanks to rcdmk' z8 M& I7 L" n  n
select CAST(36464 - 2 as SmallDateTime)
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则