Mybatis学习记录(六)--开发中的小问题
2016-04-22 20:26
393 查看
最近开始做项目,期间遇到一些小问题,开此贴记录一下
1.关于order by
今天写一个sql查询语句,用了order by但是一直没效果,后来才发现用了#{}取值,mybatis使用这个的话对于String类型会自动加上引号,导致sql无效,正确做法用$代替#SELECT * FROM cum_user <where> <if test="search != null"> (username LIKE #{search} ) or (nickname LIKE #{search}) OR (stunum LIKE #{search}) </if> </where> <if test="ordername != null"> -- 对于排序使用${}符号 ORDER BY ${ordername} ${order} </if>
2.关于三张表查询去重问题
一张主表problem,关联着catelog和cum_user两张表的主键,下面是正确的查询方法,不然会出现很多重复结果SELECT problem.id,pro_name,cate_id,catelog.cate_name,pro_pass,pro_sub,problem.credits,start_time,user_id,cum_user.username FROM problem LEFT JOIN cum_user on problem.user_id = cum_user.id LEFT JOIN catelog on problem.cate_id = catelog.id WHERE (problem.pro_name LIKE '%1%' ) or (problem.id LIKE '%1%' ) OR (catelog.cate_name LIKE '%1%') ;
相关文章推荐
- h5上传图片及预览
- HDU 3367 Pseudoforest(Kruskal)
- Memcache参数及方法
- malloc calloc realloc
- java中equals的用法以及与==的区别
- Python 的 Magic Methods 指南
- java基础(14)-- Java NIO
- socket初接触---多用户服务器简单交互(上)
- mysql - 内存表使用总结
- 24篇HTTP博客
- ubuntu增加工作分区(workspace)命令
- Linux for windows
- 【补丁】在vs2015、vs emulator for android下挪动android sdk文件夹
- 兼容IOS android 页面滑动的CSS设置
- 使用软引用解决Handler内存泄露和显示Popupwindow、Dialog时提示"Unable to add Window-token is null"的问题
- selected device is not a touchscreen I understand 以及tslib: Selected device uses a different version
- 常见面试题-memcpy()实现
- 机房重构之结账
- webapi详细
- [Java基础]一个语句交换两个数的值