2017-04-12 8 views
0

私は以下のテーブルを持っています。私はこれら3つの変数を1つに組み合わせたいと思う。 EX1に値がある場合、残りはnullです。1に3変数をマージする

id ex1 ex2 ex3 
2 12 
3  13 
4  13 
5    14 

私、このテーブルを必要とする

id final 
2  12 
3  13 
4  13 
5  14 
+1

'coalesce'関数を見てください。それは最初の欠損値を返します。 –

答えて

1

coalesce関数は引数のリストから最初の非欠落している引数を返します。例えばので:

data want; 
    set have; 
    final=coalesce(of x1-x3); 
run; 

は、X1、X2、X3から最初の非欠損値を返します。

coalescecは、関数の文字バージョンです(文字値を返します)。

別のオプションは、値、(区切り文字付きまたはcatx)そう

data want; 
    set have; 
    final = sum(of x1-x3); 
run; 

または文字で、catsはそれらを連結しますsumになります。複数の値が存在する場合、​​3210/coalescecとは異なる動作を行い、0値が存在する場合はsumの動作が異なりますが、常に1つの値が常に存在する場合は同じ動作をします。

関連する問題