2

Jax による昨年の投稿を調べていたところ、派生列 ssis の式でゼロによる除算が発生し、私の質問がカバーされているように見えましたが、Jax は自分で答えることができ、答えを提供しませんでした。Divisor =0 エラーを緩和するためにどのような方法が使用されたか知りたいです。

私の質問は次の式です: ISNULL(TotalPayrollCost) ? 0 : (ExcessCapacity * RouteVehicleCostAlloc) / TotalPayrollCost データ ビューアーで TotalPayrollCost が 0 を示していることを確認しました。

ISNULL と NULLIF を一緒に使用するソリューションがあると思っていましたが、うまく機能させることができず、変換エディターで NULLIF が機能しません。助言がありますか?

前もって感謝します!

4

1 に答える 1

3

ISNULL ロジックは、TotalPayrollCostが NULL の場合にのみ処理されます (衝撃的です、私は知っています)。isnull/nullif に言及しているので、その値が 0 であるのと同じロジックを null として取りたいので、式が次のようになると仮定しています

(ISNULL(TotalPayrollCost) || TotalPayrollCost == 0) ? 0 : (ExcessCapacity * RouteVehicleCostAlloc) / TotalPayrollCost

基本的には、総給与コストが null の場合、または総給与コストが 0 の場合はゼロを返します。それ以外の場合は、この計算を行います

于 2013-06-06T14:33:29.203 に答える