多条件查询的MYSQL语句实现(MYSQL语句的拼装)

多条件查询的实现

本文主要介绍在筛选商品等信息时,实现多条件筛选的功能。(本文使用php编写)

举例如下:如同时实现三个条件的查询:


1.排序(按价格,销量等排序)

2.产品尺寸(3寸以下,3-5寸,5寸以上)

3.按品牌筛选

首先创建数据库表:

1.产品表
    create table product 
	(
		id  int(11),
		name varchar(20),
		sales_num int(11),
		size int(5),
		is_sales int(5),
		brand_id int(11),
		primary key(id)
	);


 2.产品价格表 
    
    create table product_brand
	(
		id  int(11),
		product_id int(11),
		brand_name float,
		primary key(id)
	);
    create table product_brand
	(
		id  int(11),
		product_id int(11),
		brand_name float,
		primary key(id)
	);

 
    
 
    
实现方法如下:
 5';
				break;
			default:
				$size_info='';
				break;
		}
		switch ($brand_id) {
			//未输入品牌
			case null:
				$brand_info='';
				break;
			//根据品牌id筛选
			default:
				$brand_info=' and product.brand_id='.$brand_id;
				break;
		}
		
		$conn=new mysqli($servername,$username,$password,$dbname);
		if ($conn->connect_error) {
			die('connect failed');
		}
		拼装sql语句
		$sql='select product.id as product_id,product.name as product_name,product_price.price,product_brand.name as product_brand_name
			from product 
			inner join product_price on product.id=product_price.product_id
			inner join product_brand on product.id=product_brand.product_id
			where product.is_sales=1'.$size_info.$brand_info.$sort_type_info;
		$result=$conn->query($sql);

		$conn->close();
		
		return $result;
	}
}
?>

 
    




你可能感兴趣的:(多条件查询的MYSQL语句实现(MYSQL语句的拼装))