sql笔记

1、如果...就...(相当于if...else...)
case
when 条件1 then 结果1 else 结果2
end

例子:

sql 复制代码
select c2 as "label"
c3 as "value"
--...如果就,相当于if-else
(CASE
--如果c4是null则返回',否则返回c4本来的值
WHEN C4 IS NULL THEN ''ELSE C4
--返回的值重命名为PARENT_CODE
END) PARENT CODE,
C3 DETAIL CODE,
--如果c6等于a,或者c6是null,或者c6是'',则返回false,否则返回true,并把结果重命名为disabled
(CASE WHEN c6 = A OR c6 IS NULL OR c6 = ''
THEN 'false' ELSE 'true' END) "disabled"
from test1
where c9004=A
and cl = '测试数据'
--不写默认正序排列ASC,从小到大
order by c3

2、映射,表里的字段映射(重命名)到java代码的实体类

sql 复制代码
-- resul tMap映射的容器
--SysMenu是实体类的名字
--SysMenuResult是其他地方调用映射集的标识
--result单个映射
--id是数据库表的主键
--property是java的实体类里的名字
--column是数据库表里的名字
<resultMap type="SysMenu" id="SysMenuResult">
<id property="menuId" column="menu_id">
<result property="menuName" column="menu_name" />
<result property="parentName" column="parent_name"/>
</ resultMap>

3、sql可以把公共的东西封装,其他地方调用,和include配套使用

sql 复制代码
<!-- 提取公共的字段列表,起个名字叫 User_Column_List -->
<sql id="User_Column_List">
    id, username, age, mobile, create_time
</sql>
sql 复制代码
<select id="getAllUsers" resultType="User">
    SELECT 
    <!-- 直接通过 refid 引用上面定义的字段片段 -->
    <include refid="User_Column_List"/> 
    FROM user
</select>
相关推荐
不会编程的懒洋洋1 小时前
VisionPro 中 卡尺 CogCaliperTool
图像处理·人工智能·笔记·计算机视觉·visionpro·cogcalipertool
逍遥德1 小时前
常见的任务调度框架介绍
java·spring boot·中间件
xqqxqxxq2 小时前
Maven 完整配置与使用技术笔记
java·笔记·maven
風清掦2 小时前
【STM32学习笔记-13】PWR电源控制
笔记·stm32·学习
不可少的事只有一件2 小时前
网络调试笔记
笔记
曹瑞曹瑞2 小时前
onlyoffice的windows指定版本下载笔记
笔记·onlyoffice
噜噜噜阿鲁~2 小时前
python学习笔记 |10.1、面向对象编程-类和实例
笔记·python·学习
kdxiaojie2 小时前
U-Boot分析【学习笔记】(8)
linux·笔记·学习
彭于晏Yan2 小时前
JSONObject 使用文档(Java/Android原生)
java·spring boot·后端