1

私は私の手に非常に独特な問題を抱えています。以前のデータベースエンジニアがデータベースの設計について考えていなかったプロジェクトがあり、今はそれに固執しています。私の質問は簡単です:

2 つの異なる選択クエリがあり、フィールドが設定されているかどうかにかかわらず、そのうちの 1 つを実行する必要があります。

field1 が 0 の場合 -> クエリ 1 を実行 field1 が 1 の場合 -> クエリ 2 を実行

これまでのところ、私はここにいます:

SELECT should_i_care
FROM 
    product_sample
WHERE
    pid='XXX'
CASE should_i_care
    WHEN '1' then call query2
    WHEN '0' then call query1

しかし、実行したいクエリを宣言できないことがわかりました。助言がありますか?

4

1 に答える 1

1

このようなスクリプトまたはストアド プロシージャである必要があります。

DECLARE  shouldICare INT; 

SELECT @shouldICare := should_i_care
FROM 
    product_sample
WHERE
    pid='XXX';

IF @shouldICare = 1 THEN
   Call query2;
ELSE
   Call query1;
END IF;
于 2012-09-05T13:07:44.483 に答える