-3

我有一个关于 mysql 查询的问题。

我想要实现的是编写一个查询:

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

所以它看起来和你在 php 中使用条件语句一样:(注意 or ;) 周围的大括号)

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)) 
)

不需要“as kuur”

于 2012-09-12T08:25:12.160 回答