数据库中表A的结构如下:ID    Per    Num    Fee
001    10     10    100
002    5      12    60…………我现在想要实现这样一个功能:如果“Per”和“Num”的值都不为空,那么“Fee”的值为两者的乘积,否则“Fee”的值在插入数据的时候指定。请问这样的公式怎么写?学习,关注……

解决方案 »

  1.   

    declare @T table([ID] nvarchar(3),[Per] int,[Num] int,[Fee] as ([Per]*[Num]))
    Insert @T(ID,[Per],[Num])
    select N'001',10,10 union all
    select N'002',5,12
     
    Select * from @T
    (2 個資料列受到影響)
    ID   Per         Num         Fee
    ---- ----------- ----------- -----------
    001  10          10          100
    002  5           12          60(2 個資料列受到影響)
      

  2.   

    if(Fee=="")
    BENGIN
        Insert into A Values(ID,Per,Num,Per*Num)
    END
    ELSE
    BENGIN
       Insert into A Values(ID,Per,Num,Fee)
    END
      

  3.   


    --创建表的时候用公式
    create table tb(id varchar(10),per int,num int,fee as isnull(per,0)*isnull(num,0))