1

そこの!mySQl Front 4.1 で mysql スクリプトを作成しています。
if then、case ステートメントに問題があります。

次のコードがあります:

set @prodID = -1;
select @prodID = productID
from partid_to_productid 
where PartID= 8;


case @prodID
 WHEN NULL then select 0;
 else select 3;
 end case

フロントはそれを実行したくありません。なんで?誰かがここで何が悪いのか説明できますか?

4

1 に答える 1

4

はのSELECT外に出ますCASE:

SELECT 
  CASE @prodID 
    WHEN NULL THEN 0
    ELSE 3
  END;

実際、テスト時に期待するように、それは私には 0 を返しません。代わりに試してください:

SELECT CASE WHEN @prodID IS NULL THEN 0 ELSE 3 END;
于 2011-07-12T15:10:22.290 に答える