-4
<?php include "includes/connect.php";
$query=mysqli_query($connect,"SELECT * FROM users WHERE
Gender LIKE 'female'
&& Travel LIKE 'yes'
OR Hiking LIKE 'yes'");

姓名--------性别--------旅行--------徒步旅行

乔------------男------------是的------------是的
玛丽----------女---------是------------是
简----------女---------否------ ------是

结果:

乔·
玛丽
·简

我正在寻找结果:

玛丽

更新:我希望查询检查用户是否是喜欢旅行或徒步旅行的女性,然后返回。
更新:已回答。谢谢大家 :)

SELECT * FROM users 
 WHERE Gender = 'female'
   AND ( Travel = 'yes'
      OR Hiking = 'yes')
4

3 回答 3

2

像这样试试

SELECT * FROM users WHERE
Gender LIKE '%female%'
AND Travel LIKE '%yes%'
OR Hiking LIKE '%yes%'
于 2013-10-28T16:50:13.393 回答
2

如果您只想对结果进行排序,您可以这样做

SELECT * FROM users 
WHERE Gender = 'female'
    AND (Travel = 'yes' OR Hiking = 'yes')
ORDER BY name ASC
于 2013-10-28T16:50:22.800 回答
1

在 MySQL 中,AND 的优先级高于 OR,所以(除了其他人提到的错误)

SELECT * FROM users 
 WHERE Gender = 'female'
   AND Travel = 'yes'
    OR Hiking = 'yes'

相当于

SELECT * FROM users 
 WHERE ( Gender = 'female'
     AND Travel = 'yes')
    OR Hiking = 'yes'

所以你正在寻找喜欢旅行的女性或任何喜欢徒步旅行的人

如果您正在寻找喜欢旅行的女性或喜欢徒步旅行的女性,请使用

SELECT * FROM users 
 WHERE Gender = 'female'
   AND ( Travel = 'yes'
      OR Hiking = 'yes')
于 2013-10-28T17:03:02.580 回答