下の図は、勘定の一覧表とカウントしたい結果を示しています。すなわち口座番号は106844で、結果は0ですが、私は通常、どうなることネストされたiifsよりも簡単な方法で、SQLサーバーの不一致条件を数えますか?
sum(iif([account] = '106719' and [Outcome] in ('MESSAGE','ESCALATION_EMAIL'),1,iif([account] = '310827' and [outcome] <> 'ABORT' and 'CALL_OUTCOME_LB' in ("Call patched to Customer Care","Message Taken"),1,iif(... , 0) as [Total Outcomes]
ようIIFSの恐ろしい混乱であるとして、他の結果はカウント1としてカウントすべきである「MESSAGE」または「エスカレーションEMAIL」であるたびに
などですが、もっと簡単なやり方が必要な人や、7番目のネストされたiifでランダムなミスを犯して全体を乱す傾向があるように感じる人もいます。何か案は?
ちょうど私が後にしたものと役に立つヒント。ありがとう。 – tomdemaine
@ GordonLinoff 2つの機能的な違いはありませんでしたが、私が行った小さなパフォーマンステストでは全く違いは見られませんでした。 ANSII標準にする必要がある場合は、そのようにしてください。しかし、ほとんどの場合、その必要はありません。クエリを書くための一般的なルールは、人の読みやすさを向上させることです。これはかなり短いIIF構文を使用する私の場合です。 – Eli