2016-12-13 14 views
0

次のコードの実行中にエラーが発生します。バリデーションとフラグは文字列型の列です。 SetpointValueはfloat型ですか?U-SQLの比較

@hf =

SELECT * FROM @ParaLimits 
WHERE !Validation.Equals ("Relative") || (!Flag.Equals ("Setpoint") AND !Flag.Equals ("AdjSetpoint") || !SetpointValue.Equals ("")); 

私は次のエラーに

ERROR

VertexFailedFastを取得しています。頂点の故障により、迅速なジョブアボートが発生しました。 Vertex failed:SV1_Extract [0] [0]エラー:頂点ユーザコードエラー。 DESCRIPTION 頂点がフェイルファストエラーで失敗

解決

DETAILS

頂点SV1_Extract [0] [0] .V2 {43B20D9E-E63F-48AF-8E9A-FFFAE288FCB8は}

に失敗しました

エラー: 頂点ユーザコードエラー

EXITCODE = CsExitCode_StillActive Errorsnippet =

+0

次回は、さらに内側のエラーメッセージを追加してください。この場合、ほとんどの場合、一部の列にNULL値がある可能性があります。 C#ではnullにメソッドを適用すると実行時例外が発生します。アレクサンドルの書き直しはこれを処理する必要があります。 –

答えて

1

null値を比較する方法と、ブール演算子のさまざまな味を効果的に使用する方法を理解するには、U-SQL SELECT WHERE Clauseを読む必要があります。あなたの演算子の優先順位もやや紛らわしい。

WHERE Validation != "Relative" OR (Flag != "Setpoint" AND (Flag != "AdjSetpoint" OR SetpointValue != null));