SQL语句常用语法(开发场景中)

一、SQL语句常用小场景

1.查询某个表信息,表中某些字段为数据字典需要进行转义

sql 复制代码
SELECT
        t.ID,
        CASE
        WHEN t.DINING_TYPE = 1 THEN
        '早餐'
        WHEN t.DINING_TYPE = 2 THEN
        '午餐'
        WHEN t.DINING_TYPE = 3 THEN
        '晚餐'
        END AS diningTypeStr
from student t

2.联表查询语法

sql 复制代码
select si.* from student_info  si
left join classed_info ci on si.classed_id = ci.id 

3.每个xml中可以自定义一个查询语句头

sql 复制代码
  <sql id="query">
    select ID, ORDER_NO, WX_ORDER_NO, SCHOOL_ID, GRADE_ID, CLASSES_ID, STUDENT_ID, STUDENT_PHONE,
    DINING_TYPE, FOOD_TYPE, PAY_TYPE, "STATUS", CREATE_ORDER_DATE_TIME, PAY_DATE_TIME,
    IS_DELETE, CREATOR, CREATE_TIME, MODIFIER, MODIFY_TIME from student_info
  </sql>

4.自定义查询语句

sql 复制代码
<sql id="query">
        <if test="gradeId != null and gradeId != ''">
            and t.grade_id = #{gradeId, jdbcType=VARCHAR}
        </if>
        <if test="classesId != null and classesId != ''">
            and t.classes_id = #{classesId, jdbcType=VARCHAR}
        </if>
    </sql>

5.批量新增

sql 复制代码
<insert id="createList" parameterType="java.util.List">
        <foreach collection="list" item="item" index="index" open="begin" separator=";" close=";end;">
            INSERT INTO t_student_info (id, name)
            VALUES(#{item.id},#{item.name})
        </foreach>
    </insert>

点赞加关注,持续更新中!!!

相关推荐
倔强的石头_2 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
云技纵横2 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
沉默王二2 天前
面试官:RAG 不用向量数据库,用 MySQL 硬扛?我:100 万向量不是很轻松?
mysql·面试·ai编程
冬奇Lab2 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
小猿姐2 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops
ClouGence3 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
云技纵横3 天前
Gap Lock 死锁实战:5 秒在本地复现 MySQL 间隙锁死锁
后端·mysql
无响应de神3 天前
三、用户与权限管理
数据库·mysql
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql