2016-09-08 12 views
1

私のテーブルcust_shipmentdate_awbとcomp_shipdate_awbには2つのフィールドがあります。 Iamは、cust_shipmentdate_awbとcomp_shipdate_awbの両方のフィールドをチェックするCASE文を作成しようとすると、nullまたは空です。両方がNullの場合は、結果を「保留中」として表示します。いずれかのフィールドが空でない場合は、「完了」と表示され、両方のフィールドが入力されている場合は、「完了」として表示されます。私は以下のCASE文を試しました。しかし、両方のフィールドデータが入力されたときに保留状態を示しています。私は以下のデータに従って達成しようとしています。フィールドがNULLかどうかを確認するCASE文

============================================================ 
cust_shipmentdate_awb | comp_shipdate_awb | shipment_status 
============================================================ 

    02-03-2016   |     | Completed 
         | 09-08-2016  | Completed 
    NULL    | NULL    | Pending 
    01-06-2016   | 09-08-2016  | Completed 
============================================================ 

CASE  
    When cust_shipmentdate_awb Is Null Or comp_shipdate_awb = '' Then 'Pending' 
    Else 'Completed' End AS shipment_status 
+0

それがある場合は、データの代わりに、列に充填してステートメントを追加することができます実行された? – rbr94

+0

なぜSQLでそれをしたいのですか?単純にPHPを使ってみませんか? –

+0

誰かによってコード化されたものを編集しようとしています。ちょうどいくつかのエラーを修正する。だから私はたくさんのものを変更したくない。 –

答えて

1

だけ(「」)AND演算子を使用しようとヌルと空の両方のフィールドを確認してください。

CASE  
    When  (cust_shipmentdate_awb Is Null OR cust_shipmentdate_awb = '') 
      AND (comp_shipdate_awb Is Null OR comp_shipdate_awb = '') Then 'Pending' 
    Else 'Completed' End AS shipment_status 
+0

パーフェクト。その働き。どうもありがとうございます –

関連する問題