我创建了一个有效的SQL查询,但是很难看。我正在使用以下语句:
CASE WHEN p.Guests is null THEN 0 ELSE p.Guests
在查询中完成大约10次某些计算后,我想知道是否可以执行以下操作:
variable = CASE WHEN p.Guests is null THEN 0 ELSE p.Guests
然后代替
123 * (CASE WHEN p.Guests is null THEN 0 ELSE p.Guests)
我可以做123 * variable
。 p.Guests是参加 Activity 的来宾人数,它根据查询中的每一行而变化。所以我的问题是:有没有办法在SQL中制作这样的变量?
最佳答案
当有以下情况时,无需冗长的案例说明
ISNULL(p.Guests, 0)
http://msdn.microsoft.com/en-us/library/ms184325.aspx
关于sql - 清理SQL代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17414648/