① sql語句怎麼取數值,小數點為.1的值
查詢時改為字元型,用通配符查詢。
select * from table where to_char(czkasmant) like '%.1';(如果不是oracle的話,可能to_char那塊可能不太一樣,但是我記得其他資料庫應該也有類似這樣的函數)
如果一定要用數字的方法查詢,那麼要考慮個問題。
是否會會出現100.15這樣的數,這樣的數要不要顯示。
像上面那種肯定不會出現這個問題,那種的話,後面必須是.1才行。
如果不顯示:select * from table where czkasmant-trunc(czkasmant)=0.1
如果顯示:select * from table where czkasmant-trunc(czkasmant)>=0.1 and czkasmant-trunc(czkasmant)<0.2
trunc在這里表示截取整數,也可以用floor,不過trunc好像是通用的吧,所以我用了這個
② SQL如何取小數位數
select patindex('%.%','11.111') 返回小數點出現的位置3,左側檢索。的位置,這個函數也可以從右側檢索,你自己學習下這個函數的用法吧,希望幫到你
③ SQL中如何提取小數點後最後一位數字
DECLARE@strNVARCHAR(100)='1.224'
SELECTCHARINDEX('.',@str)
SELECTSUBSTRING(@str,CHARINDEX('.',@str)+3,1)
望採納
④ SQL查詢,返回的數字要帶一位小數,該怎麼寫
convert(numeric(18,1), column)
⑤ SQL保留一位小數
select (cast(round(a/b,1) as varchar(200))+'%') 新列名 from 表名
注意下你 a,b列的類型 int的話 點後全是0
⑥ sql 如何取出小數第一位是幾 例如:1.23456,取出小數第一位就是2,只要取出這個特定的值謝謝!
declare @a varchar(10)
set @a =1.5323232
declare @i int
set @i = Charindex('.',@a)
declare @s varchar(2)
set @s=substring(@a,@i+1,1)
print @s
@s 就是你要取出的特定的值
⑦ sql 保留一位小數 並且向下取 怎麼弄
DECLARE@fFLOAT=0.771014415253685
SELECTFLOOR(@F*10)*1.0/10
如上 你可以先乘以10(因為一位小數),再用向下取整的函數floor,最後記得*1.0/10 即除以開頭乘的10
⑧ sql取一位小數點有哪些函數 還有PB取一位小數點有哪些函數。。。不能是四捨五入的。 例如:
是sql server 嗎,
可以用帶兩個參數的round如,round(2000.48,1,1) = 2000.4
PB中可以用truncate 如 truncate(9.28,1) = 9.2
⑨ sql怎麼格式化取指定小數位數
控制小數顯示位數的辦法如下:
decimal(18,0)18是定點精度,0是小數位數。decimal(a,b)a指定指定小數點左邊和右邊可以存儲的十進制數字的最大個數,最大精度38。b指定小數點右邊可以存儲的十進制數字的最大個數。小數位數必須是從 0 到 a之間的值。默認小數位數是 0。
實例:
decimal[ (p[ ,s] )] 和 numeric[ (p[ ,s] )]
固定精度和小數位數。使用最大精度時,有效值從 - 10^38 +1 到 10^38 - 1。decimal 的 ISO 同義詞為 dec 和 dec(p, s),numeric 在功能上等價於 decimal。
p(精度)
最多可以存儲的十進制數字的總位數,包括小數點左邊和右邊的位數。
該精度必須是從 1 到最大精度 38 之間的值。默認精度為 18。
s (小數位數)
小數點右邊可以存儲的十進制數字的最大位數,小數位數必須是從 0 到 p 之間的值。
僅在指定精度後才可以指定小數位數,默認的小數位數為 0;
因此,0 <= s <= p。最大存儲大小基於精度而變化。