一、SQL详解
1. where和if标签 where标签和if标签都可以单独使用,我这里为了方便演示,在示例中就放在一起了。
select * from blog
title = #{title}
and author = #{author}
2. choose,when和otherwise标签 choose,when和otherwise标签类似于java的switch,case和default语句。
select * from blog
title = #{title}
and author = #{author}
and views = #{views}
3. set标签 set标签用于拼接update更新操作的SQL,注意示例中使用的标签是update,不再是select查询标签了。
update blog
title = #{title},
author = #{author}
where id = #{id}
4. foreach标签 foreach标签用于在参数是集合类型的场景下,我们可以循环遍历集合中的元素并拼接到SQL中。
select * from blog where id in
#{id}
5. sql标签 sql标签用于提取公共的SQL配置,在需要使用的地方直接通过include标签进行引用即可。
title = #{title}
and author = #{author}
select * from blog
二、CRUD使用动态语句 (1)添加
insert into smbms_user
userCode,
userName,
userPassword
#{usercode},
#{username},
#{userpassword}
(2)修改
方法1:(注意最后
update userid = #{id},
name = #{name},
password = #{password},
phone = #{phone},
state = #{state}
where id = #{id}
方法2: (推荐使用)
updatesmbms_bill
billcode=#{billcode},
productname=#{productname},
productdesc=#{productdesc},
(3)删除
delete from smbms_user where id=#{id}
(4)查询
方法1:
select * from smbms_user
and usercode=#{code}
and userpassword=#{password}
and deleteflag=0
方法2:(推荐使用)
${bils}.id,${bils}.billCode,${bils}.productName,
${bils}.productDesc,${bils}.productUnit,${bils}.productCount,
${bils}.totalPrice,${bils}.isPayment,${bils}.createdBy,
${bils}.creationDate,${bils}.modifyBy,${bils}.modifyDate,
${bils}.providerId,${bils}.deleteflagselect
from smbms_bill b where deleteflag=0
【sql|Mybtais动态SQL详解】
推荐阅读
- tomcat|Tomcat 线程池和ThreadLocal的爱恨情仇
- java|大文件的分片上传、断点续传及其相关拓展实践
- 笔记|Kotlin与Java的‘爱恨情仇‘
- Ontology|本体开发日记07-我与java分词组件的爱恨情仇-JiebaSegmenter类
- Ontology|本体开发日记07-我与java分词组件的爱恨情仇-WordDictionary类
- sql|实验十一(表空间管理与维护)
- java|<Java> 类和对象专题大汇总.(学不会包退)
- 图书管理系统|<Java> 图书管理系统. 课程设计之经典(学不会给我发红包)
- java|<Java>逻辑控制,方法详解,重载,牛客习题,IDEA调试方法...