MySQL:使用BETWEEN的多个AND查询?

Joh*_*ohn 3 php mysql between

我见过一位同事在这些条件下使用它来从表中获取用户:

SELECT * FROM users WHERE gender ='male' 
AND activated='yes' 
AND date_registered BETWEEN '$date1' AND '$date2' 
Run Code Online (Sandbox Code Playgroud)

他说有一个问题(当它AND activated='yes'放在那里时它没有输出任何行,但没有抛出MySQL错误.

你能不这样做吗?你需要把它放在方括号或疯狂的东西关联BETWEENAND

顺便说一下,日期格式正确.

Wri*_*ken 7

不,它会工作得很好.但是,您可能希望格式化查询,以便清楚哪个AND是独立的,哪个属于BETWEEN .. AND ...语句:

SELECT * FROM users 
WHERE gender ='male' 
   AND activated='yes' 
   AND date_registered BETWEEN '$date1' AND '$date2' 
Run Code Online (Sandbox Code Playgroud)