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>

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

相关推荐
填满你的记忆6 小时前
《为什么 MySQL 不适合做 AI 检索?》
数据库·人工智能·mysql·ai·向量数据库
map1e_zjc6 小时前
Redis入门笔记
数据库·redis·缓存
步十人6 小时前
【Redis】高可用集群架构
数据库·redis·架构
霸道流氓气质6 小时前
批量异步处理 + MQ + Redis 进度追踪实战指南
数据库·redis·状态模式
smart19986 小时前
数据备份解决方案,适合金融等关键业务需求
数据库·科技·存储
拾起零碎6 小时前
U8/固定资产反结账报错
数据库·oracle
念恒123067 小时前
MySQL connect 访问
数据库·mysql
六月雨滴7 小时前
Oracle 归档日志性能优化
数据库·oracle·性能优化
码不停蹄的玄黓7 小时前
MySQL 死锁:已产生死锁的解决方法 + 永久避免方案
数据库·mysql
Leon-Ning Liu7 小时前
【真实经验分享】ORA-600 [4187]发生在回滚段(undo segment)的 wrap# 接近最大值时
数据库·oracle