Mysql条件查询2(根据手机尾号的后四位查询)
2017-11-28 21:39
3031 查看
直接上sql语句的写法:
sql语句的写法:
<select id = "XXX(方法名)" parameterType = "hashmap" resultMap = "BaseResultMap">
select * from table(table写自己的表名称)
where 1 = 1
<if test="state != null and state != ' ' ">
and state = #{state,jdbcType = INTEGER}
</if>
<if test="number != null and number !=' ' ">
and phone like concat ('%',#{number,jdbcType=VARCHAR})
</if>
order by XX(根据某个字段排序) desc
<if test ="beginIndex != null and beginIndex != -1 ">
limit #{beginIndex,jdbcType=INTEGER},#{pageSize,jdbcType=INTEGER}
</if>
</select>
其中parameterType = "hashmap" 表示通过map集合来传递参数,resultMap = "BaseResultMap"表示返回map形式的数据,如果不知道怎么通过map封装,可以参考我前两篇文章。
if 里面的state和number字段是封装到map集合中的key值,and 后面的state和phone是数据库的字段,phone表示电话号码
phone like concat ('%',#{number,jdbcType=VARCHAR}) 表示查询后四位和number相等的手机号,
而后面再加一个‘%’,phone like concat ('%',#{number,jdbcType=VARCHAR},'%')表示查询包含number的手机号
sql语句的写法:
<select id = "XXX(方法名)" parameterType = "hashmap" resultMap = "BaseResultMap">
select * from table(table写自己的表名称)
where 1 = 1
<if test="state != null and state != ' ' ">
and state = #{state,jdbcType = INTEGER}
</if>
<if test="number != null and number !=' ' ">
and phone like concat ('%',#{number,jdbcType=VARCHAR})
</if>
order by XX(根据某个字段排序) desc
<if test ="beginIndex != null and beginIndex != -1 ">
limit #{beginIndex,jdbcType=INTEGER},#{pageSize,jdbcType=INTEGER}
</if>
</select>
其中parameterType = "hashmap" 表示通过map集合来传递参数,resultMap = "BaseResultMap"表示返回map形式的数据,如果不知道怎么通过map封装,可以参考我前两篇文章。
if 里面的state和number字段是封装到map集合中的key值,and 后面的state和phone是数据库的字段,phone表示电话号码
phone like concat ('%',#{number,jdbcType=VARCHAR}) 表示查询后四位和number相等的手机号,
而后面再加一个‘%’,phone like concat ('%',#{number,jdbcType=VARCHAR},'%')表示查询包含number的手机号
相关文章推荐
- mysql根据查询条件更新
- mysql根据查询条件去修改另一张表
- mysql按字段根据某条件去重 nohup挂后台无法输出日志 系统时间查询 2016.05.18回顾
- mysql查询数据,根据条件更新到另一张表
- MySQL中根据if标签实现多条件模糊查询(动态SQL语句)
- MySQL 查询 根据某个字段查询,且字段值为整数,放在Where 条件上
- Mysql脚本升级之根据查询条件进行insert动作
- 【mysql】根据不同条件查询表中同一字段
- mysql查询手机号码时隐藏其中间四位
- MySQL带AND关键字的多条件查询
- 数据库表设计时一对一关系存在的必要性 数据库一对一、一对多、多对多设计 面试逻辑题3.31 sql server 查询某个表被哪些存储过程调用 DataTable根据字段去重 .Net Core Cors中间件解析 分析MySQL中哪些情况下数据库索引会失效
- mysql做update时有in关联子查询条件时效率奇慢分析
- 根据查询条件开始时间、结束时间查询数据库,并且数据库中也包含开始时间、结束时间字段
- MySQL查询条件中字符串包含空格的问题
- C++中MFC DLL 按条件查询mysql数据并修改
- mybatis 在mysql查询条件日期在某两个日期之间
- Sql Server根据表名生成查询的存储过程(查询条件可选)
- ExtJs中tree根据查询条件重新load数据
- MySQL、mybatis的查询条件-时间段
- MySql使用全记录3 -----以中文作为查询条件时结果为空的原因以及两个MySql小知识点(varchar、单双引号)