我有一個名爲Table1的表,它有一個名爲Col1的varchar。我想創建一個Table2並在Col1的內容前添加一個前導「0」。在數字前加上字符+ varchar
如何將零字符添加到varchar的前面?我嘗試了幾種方法,但似乎沒有任何工作。
我有一個名爲Table1的表,它有一個名爲Col1的varchar。我想創建一個Table2並在Col1的內容前添加一個前導「0」。在數字前加上字符+ varchar
如何將零字符添加到varchar的前面?我嘗試了幾種方法,但似乎沒有任何工作。
下面的查詢將創建表2與領先的「0」 COL1什麼。
select '0' + Col1 Col1 into table2
from table1
如果已經創建了table2並且您只想填充數據。
insert into table2(Col1)
select '0' + Col1
from table1
我的表格未創建。所以我用你的第一個代碼。但它給出了這個錯誤:_對象或列名缺失或空。對於SELECT INTO語句,請確認每列都有一個名稱。對於其他語句,查找空的別名。別名定義爲「」或[]是不允許的。將別名更改爲有效的名稱._我做錯了什麼? –
編輯我的第一個答案。需要爲第一列添加別名。 – Vasanth
這是訣竅。謝謝:) –
這應該做你想要
insert into newTable select concat('0',col1), ........... FROM oldTable
'CONCAT'僅限於SQL Server 2012+。 –
好吧,如果你想添加100個零,你可以這樣做:
select replicate('0', 100)+col1
. . .
如果你想用一個給定長度的前導零,然後用right()
結合本:
select right(replicate('0', 10)+col1, 10)
. . .
如果您需要將這些插入到另一個表中,請在該表上使用insert
或update
而不是select
。
它說:_當我使用第二個代碼時,正確的函數需要2個參數。 –
顯示了你已經在你的代碼/ sql中做了什麼以及你有什麼問題的例子。 – Tanner
我這樣做:select RIGHT('00000000000'+ convert(varchar,dbo。[kyc2] .walletno),11)它顯示以下錯誤:_多部分標識符「dbo.kyc2.walletno」無法綁定._而我無法想象如何創建一個新表格。 –