根据商品名称、价格区间检索商品的SQL语句

如果名称和价格为空会检索出所有的数据

 1  1 select * from TblProduct
 2  2 where (@proName=‘‘ or chvProName like ‘%‘+@proName+‘%‘)
 3  3 and (@minPrice=‘‘  or mnyProPrice>=@minPrice)
 4  4 and (@maxPrice=‘‘ or mnyProPrice<=@maxPrice);
 5  5
 6  6--下面将参数替换成字符串
 7  7 --测试
 8  8 select * from TblProduct
 9  9 where (‘‘=‘‘ or chvProName like ‘%‘+‘‘+‘%‘)
10 10 and (‘‘=‘‘  or mnyProPrice>=null)
11 11 and (‘‘=‘‘ or mnyProPrice<=null);--检索出所有的商品

注:‘ ‘ is null  返回的false

--如果更改成下面代码:会报【从数据类型 varchar 转换为 numeric 时出错。】的错
select * from TblProduct
where (‘ ‘=‘ ‘ or chvProName like ‘%‘+‘‘+‘%‘)
and (‘ ‘ is null  or mnyProPrice>=‘‘)
and (‘ ‘ is null or mnyProPrice<=‘‘);

如果将mnyProPrice>=‘‘ 改为mnyProPrice>=null则不会报错,但因为条件不满足,检索不到任何数据

时间: 2024-10-10 14:18:26

根据商品名称、价格区间检索商品的SQL语句的相关文章

查询各个商品分类中各有多少商品的SQL语句

SELECT goods_category_id ,count(*) FROM `sw_goods` group by goods_category_id

ecshop_自定义价格区间

在ECShop后台自由定义价格区间(例如:1-30,31-200,201-1000,1001-5000,5000以上),前台自动体现的一种方法,而且每个类别的价格区间可以任意设置,让价格区间更人性化. 1.首先我们来修改ECSHOP的数据库结构,目的是给 ecs_category 增加一个新字段, 进入 后台 => 数据库管理  =>SQL查询,执行下面的SQL语句 ALTER TABLE 'ecs_category' ADD 'grade_define' VARCHAR( 255 ) NOT

ECSHOP商品分类筛选自定义价格区间

众所周知,ECSHOP的价格区间是在后台设置一个"价格区间个数",然后由程序来自动平分,很多ECSHOP网店主都认为这样做,有很大不尽人意的地方. 也有人提供过修改方法,好像只是在模板文件里手动写死几个区间的一种方法,还是不能自由定义. 下面我要讲的方法是可以在ECSHOP后台自由定义价格区间(例如:1-30,31-200,201-1000,1001-5000,5000以上),前台自动体现的一种方法,而且每个类别的价格区间可以任意设置,让价格区间更人性化. 首先我们来修改ECSHOP的

创建sql自定义的函数及商品分页sql存储过程

--商品筛选时判断品牌ID是否存在 --select dbo.isValite(94,94)create function isValite(@brandId int,@bId int)returns intas begin Declare @rNumber int if @brandId = @bId set @rNumber = 1 else set @rNumber = 0 if @bId = 0 set @rNumber = 1 return @rNumberendgo --判断商品筛选

SQL Server 【附】创建&quot;商品管理数据库&quot;、&quot;学生选课数据库&quot;的SQL语句

附:(创建“商品管理数据库”的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据库_m', filename='D:\商品管理系统\商品管理数据库_m.mdf', size=6mb,filegrowth=1mb,maxsize=unlimited) log on(name='商品管理数据库_l', filename='D:\商品管理系统\商品管理数据库_l.ldf', size=1,filegrowth=1

[原创]java WEB学习笔记92:Hibernate学习之路-- -QBC 检索和本地 SQL 检索:基本的QBC 查询,带 AND 和 OR 的QBC,统计查询,排序,分页

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

QBC检索和本地SQL检索

细说QBC:QBC(Query By Criteria) 查询:这种方式比较面向对象方式,因为是面向对象,所以查询时参数名就是所查询的类的属性名并不是数据库的表的列名重点是有三个描述条件的对象:Restrictions,Order,Projections.使用QBC查询,一般需要以下三个步骤: 1. 使用Session实例 的createCriteria()方法创建Criteria对象 , 2. 并使用add()方法添加设置查询条件,工具类Restrictions的方法为Criteria对象设置

Hibernate(十五):QBC检索和本地SQL检索

QBC检索 QBC查询就是通过使用Hibernate提供的Query By Criteria API来查询对象,这种API封装了SQL语句的动态拼装,对查询提供了更加面向对象的功能接口. 1)通过Critera实现具有条件的查询 1 @Test 2 public void testCriteria00() { 3 // 1.创建criteria对象 4 Criteria criteria = session.createCriteria(Employee.class); 5 6 // 2.添加过

数据库SQL语句学习笔记(2)-检索数据库

首先设置好此连载笔记的演示所用的表 CREATE database sells; #创建名叫sells的数据库 USE sells; #告诉mysql,我要开始使用这个数据库了 CREATE TABLE Customers #创建Customers表 ( cust_id char(10) NOT NULL , cust_name char(50) NOT NULL , cust_address char(50) NULL , cust_city char(50) NULL , cust_stat