2017-01-30 2 views
3

を比較すると、SQLであればelse文を使用するにはどうすれば3値を比較する選択クエリを作成する方法について質問したいと思います。私はモバイル、家庭、オフィスの3つのデータを持っています。私は私の携帯がNULL値であれば、それはホームに表示されます例えば一列のみを表示したい、と私の携帯電話や自宅がnullの場合、それはオフィスが表示されます。私は他のコードでそれを試してみますが、モバイルがnullの場合にのみ動作し、家に表示されます。しかし、モバイルとホームがnullの場合、私はオフィスの成果を得ることができません。3つのデータ

SELECT CASE WHEN client_mobile IS NOT NULL THEN client_mobile 
      WHEN client_mobile IS NULL THEN client_home 
      WHEN client_mobile IS NULL AND client_home IS NULL THEN client_office 
      ELSE 0 
      END 
AS client_contact FROM contact; 

enter image description here

私はまさにそれを実行する必要があり

111111 

444444 

答えて

4

​​3210の出力を取得したいと思います - それはnullそれが与えられています最初の非null引数を返します(または、彼らは「場合すべてのnull、もちろん)。

SELECT COALESCE(client_mobile, client_home, client_office) AS client_contact 
FROM contact 
+0

感謝!!!!これは2日間私を困らせていました!!ありがとうございました!! – Beginner