2011-08-03 27 views
0

私は2つのmysql呼び出しをifと条件付きで結合したいと考えています。これは私が現在持っているものです。IF条件に基づいてMysql SELECT文を実行する方法は?

IF 
mysql_query("SELECT File FROM DB.ShoePics WHERE Cover='1' AND ShoeID='$ShoeID' LIMIT 1") 
Else 
mysql_query("SELECT File FROM DB.ShoePics WHERE Cover='0' AND ShoeID='$ShoeID' LIMIT 1") 

私はそれがこれに似た何かを見てしまうと思いますが、私はその間違ったを知っている:

mysql_query("SELECT File FROM DB.ShoePics WHERE IF(Cover='1')ELSE(Cover='0') AND ShoeID='$ShoeID' LIMIT 1") 

誰かがどのように私を見ることができますか?ありがとう!

+0

正確に達成しようとしているのは、「Cover = 1」の場合は行を使用し、それ以外の場合は「Cover = 0」の行ですか? –

+0

どちらかを使用するための任意の条件を提供します... – Mchl

+0

申し訳ありません..フランクあなたが言ったことは私が達成しようとしているものです。そうでなければ、r = 1が利用可能である。 – SReca

答えて

0

作る

SELECT File FROM DB.ShoePics WHERE (Cover='1' OR Cover='0') AND ShoeID='$ShoeID' LIMIT 1 
0
SELECT File 
FROM DB.ShoePics 
WHERE 
    CASE WHEN CONDITION=1 THEN Cover='1' ELSE Cover='0' END 
    AND ShoeID='$ShoeID' LIMIT 1" 
+0

これはうまくいきませんでした。それは私に見つけた最初のレコードを与え、カバー= 1の行ではありません...私は基本的に、ユーザーがカバーとして設定したい靴の画像を取得しようとしています。そして、ユーザーがカバーを設定していない場合は、利用可能な最初の写真を選択します。 – SReca

0

するmysql_queryのようなクエリ( "DB.ShoePicsからファイルを選択WHERE(カバー= '1' AND ShoeID = '$ ShoeID' LIMIT 1")OR(カバー=」 0 "とShoeID = '$ ShoeID' LIMIT 1")

+0

上記のコードと同じ結果 – SReca

関連する問題