首页 > 数据库 >2.Mybatis-常用sql

2.Mybatis-常用sql

时间:2022-09-01 20:56:09浏览次数:51  
标签:常用 NAME sr sys ROLE sql Mybatis ID

1.Mybatis常用select语句
<select id="getRolesByParam" parameterType="java.util.HashMap" resultType="com.serlyf.system.entity.Role">
    SELECT
    sr.ROLE_ID AS roleId,
    sr.ROLE_NAME AS roleName,
    sr.IS_ACTIVE AS isActive,
    sr.REMARK AS remark,
    sr.CREATE_DATETIME AS createDatetime,
    CONCAT(su.FIRST_NAME,su.LAST_NAME) AS createUser,
    sr.UPDATE_DATETIME AS updateDatetime,
    CONCAT(su2.FIRST_NAME,su2.LAST_NAME) AS createUser
    FROM
    sys_role sr
    LEFT JOIN sys_user su ON su.USER_ID=sr.CREATE_USER 
    LEFT JOIN sys_user su2 ON su2.USER_ID=sr.UPDATE_USER 
    WHERE sr.IS_ACTIVE='Y'
    <if test="roleName!=null and roleName!=''">
        AND sr.ROLE_NAME like CONCAT('%',#{roleName},'%') 
    </if>
</select>
2.Mybatis常用insert语句
<insert id="insertRole" parameterType="com.serlyf.system.entity.Role">
    insert into sys_role (ROLE_ID,ROLE_NAME,REMARK,IS_ACTIVE,CREATE_DATETIME,CREATE_USER)
    values (#{roleId}, #{roleName}, #{remark},#{isActive}, #{createDatetime}, #{createUser})
</insert>
3.Mybatis常用批量insert语句
<insert id="batchInsertMenuRoleRef" parameterType="java.util.List">
    insert into sys_menu_role_ref (ID,ROLE_ID,MENU_ID)VALUES
    <foreach collection="list" item="item" index="index"
             separator=",">
        (#{item.id},#{item.roleId},#{item.menuId})
    </foreach>
</insert>

4.Mybatis常用update语句
<update id="updateRole" parameterType="com.serlyf.system.entity.Role">
    update sys_role
    <set>
        <if test="roleName != null">
            ROLE_NAME = #{roleName},
        </if>
        <if test="remark != null">
            REMARK = #{remark},
        </if>
        <if test="isActive != null">
            IS_ACTIVE = #{isActive},
        </if>
        <if test="updateDatetime != null">
            UPDATE_DATETIME = #{updateDatetime},
        </if>
        <if test="updateUser != null">
            UPDATE_USER = #{updateUser}
        </if>
    </set>
    where ROLE_ID = #{roleId}
</update>
5.Mybatis常用delete语句
<delete id="deleteRoleByRoleId" parameterType="java.lang.String">
    update sys_role set IS_ACTIVE='N'
    where ROLE_ID = #{roleId}
</delete>
6.Mybatis常用的Like语句
WHERE sr.IS_ACTIVE='Y'
<if test="roleName!=null and roleName!=''">
    AND sr.ROLE_NAME like CONCAT('%',#{roleName},'%') 
</if>

WHERE sr.IS_ACTIVE='Y'
<if test="roleName!=null and roleName!=''">
    AND sr.ROLE_NAME like "%"#{roleName}"%" 
</if>
7.Mybatis常用select字段拼接
CONCAT(su2.FIRST_NAME,su2.LAST_NAME) AS createUser

标签:常用,NAME,sr,sys,ROLE,sql,Mybatis,ID
From: https://www.cnblogs.com/NIAN2011/p/16647787.html

相关文章

  • 1.Mybatis-XML模板
    SELECT sr.ROLE_IDASroleId, sr.ROLE_NAMEASroleName, sr.IS_ACTIVEASisActive, sr.REMARKASremark, sr.CREATE_DATETIMEAScreateDatetime, CON......
  • 3.MySQL常用知识
    1,基础查询//1.groupby+聚合函数+HAVING条件过滤SELECTSEX,AVG(AGE)FROM`user`GROUPBYSEXHAVINGSEX='女'2,DCL语句1,创建用户,当前主机访问CREATEuser'ser......
  • 异常java.sql.SQLException: Before start of result set
    使用rs.getString();前一定要加上rs.next();原因:ResultSet对象代表SQL语句执行的结果集,维护指向其当前数据行的光标。每调用一次next()方法,光标向下移动一行。最初它位于......
  • Mysql (需5.6以上版本)Slave 延迟复制配置
    Mysql(需5.6以上版本)Slave延迟复制配置通过设置Slave上的MASTERTOMASTER_DELAY参数实现:CHANGEMASTERTOMASTER_DELAY=N;N为多少秒,该语句设置从数据库延时N秒后,再与......
  • MySQL Explain执行计划key_len详解(特意针对date和datetime详细测试说明)
    MySQLExplain执行计划key_len详解(特意针对date和datetime详细测试说明)我们在使用Explain查看SQL执行计划时,其中有一列为key_kenkey_len表示使用的索引长度,那么key_len......
  • 常用知识整理
    本文持续更新。裴蜀定理:若\(a,b\)为不全为\(0\)的整数,存在整数\(x,y\),使\(ax+by=\gcd(a,b)\)。推论1(多元):若\(a_1,a_2,...,a_m\)为不全为\(0\)的整数,存在整......
  • absible笔记第一章 (ansibles基础与playbook常用模块)
    一、ansibles基础与playbook     1.优先级问题            ANSIBLE_CONFIG            ansible.cfg ......
  • MySQL5.7 datetime设置默认为当前时间
    DROPTABLEIFEXISTS`strategy`;CREATETABLE`strategy`(`id`bigint(11)NOTNULLAUTO_INCREMENTCOMMENT'自增ID',`create_time`datetime(3)DEFAULTCURR......
  • ent裸SQL执行
    ent快速上手一文中介绍了如何在ent框架内使用ORM思想操作数据库,本文讲述下如何在ent框架下执行裸SQL语句。ent通过引入sql/execquery的featureflag来支持裸SQL执行,这样可......
  • 使用OpenMMLab系列的开源库时,常用的脚本合集。
    使用OpenMMLab系列的开源库时,常用的脚本合集。开源仓库:gy-7/mmlab_scripts脚本解释:anchor_visiual.py生成的锚框可视化aug_test.py自动数据增强,单文件可视化效果......