[英]SQL remove leading zeros
我無法從列中刪除前導零。 在這種情況下,我的 SQL 查詢是
Select distinct
ltrim(rtrim([FGQSHO])) as QTY,
ltrim(rtrim([QULOTN])) as Batch,
ltrim(rtrim([QUQTSH])) as BatchQty
FROM serh
left join boll on serh.HVSERN = boll.QUSERN
left join bold on boll.QUBOL# = bold.FGBOL# and boll.QUENT# = bold.FGENT#
left join bolh on bold.FGBOL# = bolh.FEBOL#
left join ocri on bold.fgord# = ocri.ddord# and bold.fgitem = ocri.dditm#
where FGBOL# = '761221'
結果是
QTY Batch BatchQty
30.00000 4615J0003 3Q20 14.00000
30.00000 4615J0005 4Q20 16.00000
我正在尋找這個結果。
QTY Batch BatchQty
30 4615J0003 3Q20 14
30 4615J0005 4Q20 16
使用floor()
function:
floor(ltrim(rtrim([FGQSHO]))) as QTY,
為什么首先將這些值存儲為字符串? 您應該將數字存儲為數字。 如果它們是數字,則不應對它們使用字符串函數。
L/RTRIM
僅刪除空格,不刪除尾隨零。 無論如何,您不能修剪數字,它不是文本。
你想要: CAST(Qty AS int)
或FLOOR(Qty AS int)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.