當前位置:首頁 » 編程語言 » sql補0成3位
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql補0成3位

發布時間: 2023-08-14 09:08:30

『壹』 資料庫欄位補'0'

寫個函數:
CREATE Function xfn_UpdateZero(@Str VARCHAR(20),@Len INT)
RETURNS VARCHAR(20)
AS
BEGIN
DECLARE @ALEN INT
SET @ALEN=0
WHILE @ALEN<@Len-1
BEGIN
SET @Str='0'+@Str
SET @ALEN=@ALEN+1
END
RETURN @Str
END

然後更新欄位值:
update table_name set 欄位名=dbo.xfn_UpdateZero(欄位名,5)
這樣這個欄位的所有數據長度都變成了5
(PS:前提是這個欄位中不可以有值的長度大於五位,否則這個值不會更新)

『貳』 sql位數不足補0

假設結果值用變數a表示,補位用b表示,需求結果用c表示
if len(a)=1 then
b="000"
elseif len(a)=2 then
b="00"
elseif len(a)=3 then
b="0"
else
b=""
end if

c=b&a

『叄』 SQL怎樣在固定值後面補0

具體什麼資料庫?

以sqlserver,mysql,oracle各自為例:

sqlserver:

createtabletest
(點名varchar(20));

insertintotestvalues('HS901');
insertintotestvalues('HS9010');
insertintotestvalues('HS9010');

執行:

selectLEFT(點名+'00000000',8)fromtest

結果:

『肆』 資料庫里用sql語言更新字元串

update 目標表 set 時間 = substring(時間,1,len(時間)-2)+':'+substring(時間喊數,len(時間)-2,2)

數據這一欄位都是3位數,如果像上面的6,23就要老啟在前面補0,變成006,023保存。 這個暫沒有侍滲如做出,待後補充。

insert 目標表 select * from 源表

『伍』 一個sql函數名,如果字元串不夠位數的話就在前面加上指定位數指定字元

select replace(space(指定位數-len('欄位')),space(1),'補位字元')+ltrim(str('欄位'))這個 你拿去改對應就ok了的

『陸』 sql數據補位

用lapd函數,左補零

用法
select LPAD(100,5,0) from al

100為欄位名,5為補完後的長度,0為補充的字元

『柒』 sql語句問題 在一組數字前面加一個0

如果該列是char或者varchar類型 直接:
update 表名
set 列名='0'+列名

就可以.

如果該列是數值型,可以用

update 表名
set 列名='0'+ltrim(rtrim(str(列名)))

『捌』 SQL SERVER自動在後面補0滿足8位數請問怎麼寫

如果是字元串的話,可以通過字元串連接的方式實現,由於SQL Server沒有Oracle的lpad和rpad函數,可以使用REPLICATE函數代替
column_name+replicate('0',8-column_name.len()); 缺多少位就補上多少位,