Php mysql与or查询
我需要进行搜索查询,其中用户可以按姓名、课程、年份或成员进行搜索,也可以按上述任何一项进行搜索,并且用户可以使用所有字段或任何数量的字段进行搜索,例如:-仅限于名称和课程 这怎么可能?我不想做不同的查询,一个查询可以吗?现在我的问题是:Php mysql与or查询,php,mysql,Php,Mysql,我需要进行搜索查询,其中用户可以按姓名、课程、年份或成员进行搜索,也可以按上述任何一项进行搜索,并且用户可以使用所有字段或任何数量的字段进行搜索,例如:-仅限于名称和课程 这怎么可能?我不想做不同的查询,一个查询可以吗?现在我的问题是: $query="SELECT * FROM fsb_profile WHERE profile_name = '".$_REQUEST['name']."' AND profile_member= '".$_REQUEST['type']."
$query="SELECT * FROM fsb_profile
WHERE profile_name = '".$_REQUEST['name']."'
AND profile_member= '".$_REQUEST['type']."'
AND profile_year= '".$_REQUEST['year']."'
AND profile_course='".$_REQUEST['course']."'
OR profile_name = '".$_REQUEST['name']."'
OR profile_member= '".$_REQUEST['type']."'
OR profile_year= '".$_REQUEST['year']."'
OR profile_course='".$_REQUEST['course']."'";
但它没有运行,它只是按字段中的任何一个进行搜索,这是如何实现的?只需使用
或
即可进行查询
$query="SELECT * FROM fsb_profile
WHERE profile_name = '".$_REQUEST['name']."'
OR profile_member= '".$_REQUEST['type']."'
OR profile_year= '".$_REQUEST['year']."'
OR profile_course='".$_REQUEST['course']."'";
未测试。只需使用
或
即可进行查询
$query="SELECT * FROM fsb_profile
WHERE profile_name = '".$_REQUEST['name']."'
OR profile_member= '".$_REQUEST['type']."'
OR profile_year= '".$_REQUEST['year']."'
OR profile_course='".$_REQUEST['course']."'";
未测试。如果您与where子句混合使用AND或在where子句中使用AND,那么使用括号来准确表示组合是很有用的:(a和B)或者C与a和(B或C)不同。SQL将以自己的方式解释A和B或C(没有任何括号),但不一定是您期望(或打算)的解释方式 e、 g 正在寻找一个喜欢足球、喜欢比萨饼或威士忌的人;所以它会挑选喜欢比萨饼的足球爱好者,喜欢威士忌的足球爱好者,喜欢比萨饼和威士忌的足球爱好者
WHERE ( Likes Soccer AND Likes Pizza ) OR Likes Whiskey
正在寻找一个既喜欢足球又喜欢比萨饼的人,或者一个喜欢威士忌的人;因此,它将挑选那些一定也喜欢比萨饼的足球爱好者,或者威士忌爱好者,或者那些一定也喜欢比萨饼但可能也喜欢威士忌的足球爱好者。如果你在where子句中混合了AND,那么使用括号来准确地表示组合是很有用的:(a和B)或者C与a和(B或C)不同。SQL将以自己的方式解释A和B或C(没有任何括号),但不一定是您期望(或打算)的解释方式 e、 g 正在寻找一个喜欢足球、喜欢比萨饼或威士忌的人;所以它会挑选喜欢比萨饼的足球爱好者,喜欢威士忌的足球爱好者,喜欢比萨饼和威士忌的足球爱好者
WHERE ( Likes Soccer AND Likes Pizza ) OR Likes Whiskey
正在寻找一个既喜欢足球又喜欢比萨饼的人,或者一个喜欢威士忌的人;因此,它将挑选一定也喜欢比萨饼的足球爱好者,或威士忌爱好者,或一定也喜欢比萨饼但可能也喜欢威士忌的足球爱好者你已经反复问了同样的问题。帮自己一个忙,学习一点SQL和布尔代数(完成后别忘了阅读SQL注入漏洞)。听起来你只需要使用OR子句过滤这三个字段。您能否发布一些示例数据,以及您希望从特定搜索查询中获得什么样的输出?将帮助我们帮助您:)使用
mysql\u real\u escape
或准备好的语句;或者准备好面对可能的重复,因为你已经一遍又一遍地问同样的问题。帮自己一个忙,学习一点SQL和布尔代数(完成后别忘了阅读SQL注入漏洞)。听起来你只需要使用OR子句过滤这三个字段。您能否发布一些示例数据,以及您希望从特定搜索查询中获得什么样的输出?将帮助我们帮助您:)使用mysql\u real\u escape
或准备好的语句;或者准备好面对可能的