Ⅰ sql如何做除法
這樣:
select
t.[origin-destination],t.[SH/LANE/MOT] /(select count(1) from ['TMS$'] )ASPERCENTAGE
FROM (代碼1) t
group by [origin-destination],t.[SH/LANE/MOT]
having t.[SH/LANE/MOT] /count(*) <= 0.01
註:兩個count都是int,相除會沒有小數部分,所以應該都給轉成帶小數的數。
cast as numeric(10,4) 。
(1)sql相除小數點擴展閱讀:
SQL中除法運算的實現
R(X,Y)÷S(Y,Z)的運算用結構化語言SQL 語句可表達為下列形式:
select distinct R.X from R R1
where not exists
(
select S.Y from S
where not exists
(
select * from R R2
where R2.X=R1.X and R2.Y=S.Y
)
)
Ⅱ sql 整數相除 怎麼取得小數
這取決於欄位類型,如果相除的兩個欄位都是整數,返回類型自然也是整數。
所以想要得到整數,在運算過程中convert()或者cast轉換城小數來運算
Ⅲ sql查詢用到兩個欄位相除,如何讓他保留小數兩位
下面的語句即可:
select
*
from
<你沒說表名哦>
where
c<>round(c)
原理就是判斷這個欄位是否和四捨五入以後的結果相同,不同就有小數。你的資料庫系統如果說round為未知函數,那你可以查一下相應的手冊,看看是不是int等。
Ⅳ SQL 兩整數相除,取小數點後兩位
用函數ROUND(欄位,精度)SqlServer Oracle通用
Ⅳ SQL中,兩整數相除怎麼取小數點後兩位
保留小數點後兩位有效數字,或保留至萬位,用round函數實現(四捨五入),rounp函數向上舍入,rounddown函數向下舍入。第2個參數,為正時向小數點後數,為負時向小數點前數
Ⅵ MSSQL 查詢用到兩個欄位相除,如何讓他保留小數兩位
把欄位類型設置為decimal類型。
declare
@a
decimal(9,2),@b
decimal(9,2)
,@c
decimal(9,2)
set
@a=100
set
@b=3
select
@c=@a/@b
print
@c
Ⅶ sql 乘除 保留小數點問題
cast(SUM(DATEDIFF(ss,opentime ,leavetime )/60.0/60.0) as numeric(18,2) )
就可以只保留兩位小數了。
Ⅷ sql中兩int類型相除,希望得到一個小數位的數值
DECLARE @a int,
@b int,
@c int
SET @a=5,
@b=10,
@c=3
SELECT 1.0*@a/@b, 1.0*@a/@c
Ⅸ 在sql中兩數相除為什麼等於1,我要保留小數
--1、整數相除,結果是整數
select5/2
--2、小數相除,結果是小數
select5.0/2