如:1/3 我用什么数据类型
------解决方案--------------------
字符串 varchar
------解决方案--------------------
------解决方案--------------------
看你要的精度了,可以用float或者decimal
------解决方案--------------------
用DECIMAL
------解决方案--------------------
cast(1/3 as dec(18,3))
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
- SQL code
create table tb(col varchar(10))insert into tb select '1/3'select * from tb/*col----------1/3(1 行受影响)*/godrop table tb
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
在字段里存运算表达式
?
用触发器来做吧
?
------解决方案--------------------
非要用一個字段存的話要用varchar,計算的時候用下面的代碼
- SQL code
declare @字段名 varchar(20)set @字段名='1/3'select cast(left(@字段名,charindex('/',@字段名)-1) as dec(18,3))/cast(right(@字段名,len(@字段名)-charindex('/',@字段名)) as dec(18,3))
------解决方案--------------------
select cast(1.0*1/3 as dec(18,3))
------解决方案--------------------
试了下,可能有问题,似乎只能拆解。
------解决方案--------------------
字符类型 varchar(50) ,并且如果遇到不知道到类型的 都可以用这个类型