我在SQL Server中创建了一个表,用于存储击球手的跑动和球面数,此外,我还具有一个计算列来获取球员的罢工率
(((100) * [TotalRun]) / [TotalBallPlayed])
除非第一个球无效并且球员得分得分无效,否则它会正常工作。
例如:
然后,此计算列创建一个异常,该异常导致程序错误。
有什么方法可以在计算列中添加条件以避免这种情况?
答案 0 :(得分:3)
只需使用IIF
这样的条件:
ALTER TABLE dbo.YourTableNameHere
ADD StrikeRate AS IIF(TotalBallPlayed > 0, (100.0 * [TotalRun]) / [TotalBallPlayed], 0);
如果TotalBallPlayed
大于零,则返回您拥有的公式;如果0
则返回TotalBallPlayed = 0