2016-11-01 7 views
-1
Select case 
    When book_id is not null 
    then case when title = title_id then title_id end 
    Else '0' end 
from table 

ロジックはケースです!どのように正しく書くことができますか? 一般的にこう書くことができますか?ネストされたケース:どのように正しく書き込むことができますか?

+0

OracleまたはMySQLの最初のものは? – mathguy

+0

@mathguyオラクル、それは私にとって問題ではない場合 – jaraisyn

+1

Oracleでは、これは有効なステートメント(ネストされたCASE式)です。あなたはそのように書くことができます。それが何をしているのかは明らかではありません(あなたはあなたの基本表を記述しておらず、「タイトル」はwhen条件にあります)が、原則としてそれは問題ありません。 – mathguy

答えて

0
CASE WHEN book_id is not null 
    THEN CASE 
        WHEN title=title_id 
        THEN title_id 
        ELSE 0 
     END, 
    ELSE CASE 
        WHEN "Handle the other cases for book" 
        THEN "Case 2" 
        ELSE "Default for other Case" 
     END 
END 
+0

提案:質問を見るときに、タグを調べてください。もしあなたが 'MySQL'と' Oracle'の両方を見るならば、これはOPへの最初の質問でしょう。 MySQLのソリューションはOracleの質問を解決する可能性は低く、その逆もありますので、タグの明確化を求める前に回答から多くの利益は得られません。 – mathguy

関連する問題