sql-server - 导入带前导零的数据 - SQL Server
问题描述
我正在尝试将数据导入表中。我正在做一个批量插入。我使用 CREATE 语句创建了表,其中所有字段都是 nvarchar(max)。我不明白为什么在导入完成后,带有前导零的数据已更改为科学计数法。为什么它不保留为文本并保留前导零?
解决方案
我建议您定义您想要的零的数量,然后进行更新。这是一个有 10 个零的示例。
create table #leadingZeros(uglynumber nvarchar(max),handsomenumber nvarchar(max),nicenumber nvarchar(max))
INSERT INTO #leadingZeros VALUES(1000000,0000123,0500000)
SELECT * FROM #leadingZeros
--OUTPUT:
--uglynumber handsomenumber nicenumber
--1000000 123 500000
UPDATE #leadingZeros SET
uglynumber=RIGHT('0000000000'+uglynumber,10)
,handsomenumber=RIGHT('0000000000'+handsomenumber,10)
,nicenumber=RIGHT('0000000000'+nicenumber,10)
SELECT * FROM #leadingZeros
--OUTPUT
--uglynumber handsomenumber nicenumber
--0001000000 0000000123 0000500000
推荐阅读
- vue.js - Vuetify v-tabs 长时间切换标签
- azure - Azure 数据工厂 Rest API 分页问题
- bazel - Bazel 编译有很多不同的目标,哪些是坏的?
- postgresql - 我正在尝试使用 lpad SQL 函数,但它抛出 lpad(text) 不存在
- java - Java 打印值列表
- windows - Doom Emacs 在 Windows 10 上启动缓慢并闪烁
- swift - 添加 APNSSwift 依赖项。但它不工作
- php - 如何避免在 Symfony Messenger 中处理来自“子”类的消息?
- python - noobie 遍历列表以显示系列
- json - 使用 JSON Parser 提取 JSON 属性 - Coin Market Cap API