2011-10-26 10 views
0

mysqlのIf文に何らかの問題があります。Mysql if文が空でない場合は、他の2つを比較してください。

SELECT c.* FROM cca_coupons c 
JOIN cca_owners o ON o.id = c.owner_id 
WHERE o.id='1' 
    AND IF c.max_redemptions != '0' THEN c.amount_generated >= c.max_redemptions 

私はこの作業を取得するように見えることはできません - 私はc.amount_generated >= c.max_redemptionsのみc.max_redemption sの場合は、同じ'0'ないSELECT c.*にしたいです。

私は含めてこのクエリに含めるしたい他の条件があります:WHERE active='0' OR expiration_date > now()

答えて

1
SELECT c.* 
FROM cca_coupons c 
JOIN cca_owners o ON o.id=c.owner_id 
WHERE c.amount_generated >= c.max_redemptions 
AND c.max_redemptions <> '0' 

は「max_redemptions」数または文字列ですか?

+0

こんにちは。その数字ですが、空白の場合は無制限を意味し、その行を選択したくありません。しかし、私は同じクエリ 'WHERE active = '0' OR expiration_date> now()'で行を選択したいという条件が他にもあります。 –

関連する問題