-3

mysqlクエリに関して質問があります。

私が達成したいのは、次のようなクエリを作成することです。

SELECT * 
FROM Table
WHERE Col1 = 'something' AND Col2 = 'something' AND 
         ( Col3 = 'Something' OR Col3 = 'Something');

したがって、phpで条件ステートメントを使用する場合と同じように見えます:(または;の周りの中括弧に注意してください))

if ( $i == 'something' and ($k == 'something' || $k == 'something') ){
//Do something
}

または多分それを行うための別の/より良い方法がありますか?

編集)クエリが正しいことがわかりました。それを確認していただきありがとうございます。以下は、失敗し続けるクエリの一部です。

SELECT * 
FROM Table
WHERE Condition1 = 'something'
AND(
 Enddate = DATE(DATE_ADD(NOW(), INTERVAL -1 DAY)) 
OR 
 Enddate = DATE(DATE_ADD(NOW(), INTERVAL -2 DAY)) 
) 

おそらく明らかなことですが、私はそれを見つけることができないようです。

解決済み

質問してすみません。上記のコードの直後のどこかで、クエリが閉じ中括弧をミストしていることがわかりました。

4

2 に答える 2

1

条件を記述する代わりに、句ORを使用できますIN

SELECT * 
FROM Table
WHERE Col1 = 'something1' AND 
      Col2 = 'something2' AND 
      Col3 IN('Something3','Something4');
于 2012-09-12T08:10:39.373 に答える
0
SELECT * 
FROM Table
WHERE Condition1 = 'something'
AND(
 Enddate = DATE(DATE_ADD(NOW(), INTERVAL -1 DAY)) 
OR 
 Enddate = DATE(DATE_ADD(NOW(), INTERVAL -2 DAY)) 
)

「クウルとして」の必要はありません

于 2012-09-12T08:25:12.160 に答える