使用Excel生成SQL – 问题处理date字段
我有一个excel文件充满了我的客户想要放入数据库的数据。 我已经在数据左侧生成了一个如下所示的列(明显改变了这里的字段名称):
="INSERT INTO TBL_CUSTOMER (FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, CUSTOMER_DATE_REGISTERED) VALUES ('"&D2&"','"&E2&"','"&F2&"','"&G2&"','"&H2&"','"&I2&"','"&J2&"','"&K2&"','"&L2&"','"&M2&"','"&N2&"','"&O2&"','"&P2&"','"&Q2&"','"&R2&"','"&S2&"','"&T2&"','"&U2&"','"&V2&"','"&W2&"','"&X2&"','"&Y2&"','"&Z2&"','"&AA2&"','"&AB2&"','"&AC2&"')"
一切正常,但问题是,最后一项(单元格AC2)格式25/12/2010 08:45:45date。 Excel正在读取这个40537.3651041667。
任何想法如何使其正确显示?
希望你们能帮忙!
编辑:Nomatted我设置单元格格式为AC2我仍然得到随机数拉入查询
试试TEXT()函数…
TEXT(AC2, "dd/mm/yyy hh:mm:ss")
这将从指定格式的值中返回一个string
="INSERT INTO TBL_CUSTOMER (FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, FIELD, CUSTOMER_DATE_REGISTERED) VALUES ('"&D2&"','"&E2&"','"&F2&"','"&G2&"','"&H2&"','"&I2&"','"&J2&"','"&K2&"','"&L2&"','"&M2&"','"&N2&"','"&O2&"','"&P2&"','"&Q2&"','"&R2&"','"&S2&"','"&T2&"','"&U2&"','"&V2&"','"&W2&"','"&X2&"','"&Y2&"','"&Z2&"','"&AA2&"','"&AB2&"', '"&TEXT(AC2, "dd/mm/yyy hh:mm:ss")&"')"
使用区域不可知格式的TEXT函数
TEXT(AC2, "yyyymmdd hh:mm:ss")
要么
TEXT(AC2, "yyyy-mm-ddThh:mm:ss")