这里有三张表,teacher,organization,sysuser

目的:使用分页查询三表联查,并且对username的模糊查询,和对tecauditstate进行判断查询

teacher表字段(teacher as t)

t.tecid,t.tecorgid,t.tectitle,t.teclabel,t.tecauditstate

organization表字段(organization as o)

o.orgname,o.orgid

sysuser表字段(sysuser as u)

u.username,u.userid

查询语句:

@Select("<script>"+" SELECT t.tecid,t.tecorgid,t.tectitle,t.teclabel,t.tecauditstate,u.username,u.userid,o.orgname,o.orgid FROM teacher AS t"+" JOIN sysuser AS u ON t.userid=u.userid"+" JOIN organization AS o ON t.tecorgid=o.orgid"+" <where>"+" <if test=' state != null'> AND tecauditstate = #{state}</if>"+" <if test=' username != null and username != \"\" '> AND u.username LIKE #{username}</if>"+" </where>"+" </script> ")

注: where 后面条件需要放在<where></where>标签

if语句的语法为  <if test =' [字段名] !=null '> AND [字段名]=#{参数} </if>

MyBatis使用@Select注解写动态SQL语句相关推荐

  1. Mybatis Plus 是如何实现动态 SQL 语句的?原理你懂吗?

    作者 | 稻草江南 来源 | https://juejin.cn/post/6883081187103866894 Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,那么它是怎么 ...

  2. 若依框架搜索框使用注解写动态SQL

    最近在使用若依前端框架开发项目,遇到了一些问题,当我们在分页时候遇到,数据库中是1,2,3分别代表男,女,未知,的时候怎么样才能在分页的时候返显出来. 直接上代码就ok啦 {field:'status ...

  3. MyBatis学习 之 三、动态SQL语句

    2019独角兽企业重金招聘Python工程师标准>>> 有些时候,sql语句where条件中,需要一些安全判断,例如按某一条件查询时如果传入的参数是空,此时查询出的结果很可能是空的, ...

  4. Mybatis—动态SQL语句与逆向工程

    Mybatis动态SQL语句与逆向工程 MyBatis动态SQL语句与逆向工程 1.动态SQL语句 1.1.动态SQL是什么 1.2.动态SQL有什么用 1.3.基于XML的实现 1.3.2.接口文件 ...

  5. oracle 带有变量的语句_Oracle 动态SQL语句(2)之含变量的WHERE语句与日期变量

    在 Oracle 动态SQL语句(1)中提到基本动态SQL语句书写,但在写动态SQL语句时特别要注意日期型变量和WHERE语句的编写. 如下代码: 1.注意在执行动态SQL语句时,execute im ...

  6. 02JavaWeb之MyBatis详解、SqlSession执行、mapper代理执行、动态SQL语句、注解开发、resultMap、resultType、多参数传递

    MyBatis MyBatis 是一款优秀的持久层框架,用于简化 JDBC 开发,它封装了JDBC大部分的操作. MyBatis 本是 Apache 的一个开源项目iBatis, 2010年这个项目由 ...

  7. Mybatis注解-注解方式的动态SQL语句

    基于手写SQL语句的注解CRUD 把手写SQL语句的注解CRUD,修改为动态SQL语句方式. CategoryDynaSqlProvider 新增CategoryDynaSqlProvider,提供C ...

  8. Mybatis第三天动态Sql语句、XML中一对多、多对一、多对多该怎么写

    Mybatis第三天 Mybatis中使用unpooled配置连接池原理分析 Mybatis中使用pooled配置连接的原理分析 Mybatis中的事务原理和自动提交设置 Mybatis中的动态sql ...

  9. Java神鬼莫测之MyBatis注解开发之动态SQL语句(六)

    1.Mybatis注解开发之动态SQL语句 背景:使用mybatis的注解开发动态Sql会比较麻烦, 很不方便, 所以不太推荐使用,该文章以查询作为案例,演示动态sql语句. 注意:Mybatis的动 ...

最新文章

  1. MsSQL的字段类型
  2. 第一章·MySQL介绍及安装
  3. 多线程开发之---线程等待
  4. boost::math::legendre_stieltjes用法的测试程序
  5. java打印等腰梯形
  6. 宝塔自助建站系统源码v8.0
  7. CSS3 3D切割轮播图
  8. iOS开发_统计xcode代码行数
  9. 父组件直接触发子组件中的函数
  10. 测试版降级后软件还在么,2分钟告诉你如何将iOS测试版降级到正式版本
  11. TCPIP协议详解内容总结
  12. 锐捷服务器虚拟化技术_2019云计算分类排行发布 星网锐捷勇夺两项榜首
  13. c 17 语言标准下载,C++ 17 标准手册(含C++ 17 STL Cookbook) 官方pdf原版
  14. WebKit 是一个开源的浏览器引擎
  15. UML 返回消息的虚线箭头 如何画
  16. Crontab 每隔整点1小时2小时执行一次任务
  17. [学习笔记]UnityShader入门精要_第12章_屏幕后处理效果
  18. rtklib-单点定位(pntpos.c)代码关键问题解析-satposs部分
  19. 数据库常考题型(2)——求候选键(候选码)
  20. c语言字符串中字母降序数字升序,将字符串以ASCII码降序排列

热门文章

  1. 1009 说反话 (20分)快速易理解C++版
  2. 探索 OkHttp 原理
  3. Windows slmgr.vbs 命令详解
  4. EJB----EJB 概念
  5. 微信小程序从开发到上线步骤(持续更新)
  6. 学习Struts框架系列(一):模拟Struts工作流程
  7. 如何使用 OpenTracing 和 Jaeger 追踪 Pulsar 消息
  8. 高级软件工程第九次作业:东理三剑客团队作业-随笔7
  9. 零基础深入浅出主成分分析PCA
  10. 【易语言助手插件】IDE 鼠标手势1.2 原汁原味移植浏览器手势