sql难点

devtools/2025/2/13 6:09:54/

一、

假设你有一个查询,需要根据 id 是否为 null 来动态生成 SQL 条件:

xml复制

<select id="getResources" resultType="Resource">SELECT * FROM resources<where><if test="id != null">and id <![CDATA[<>]]> #{id}</if></where>
</select>

生成的 SQL

假设 id 的值为 123,生成的 SQL 将是:

sql复制

SELECT * FROM resources
WHERE id <> 123

如果 idnull,则不会生成任何条件,生成的 SQL 将是:

sql复制

SELECT * FROM resources

从表 resources 中选择所有列(* 表示所有列),但只选择那些 id 字段不等于 123 的记录。

二、

查询解释

sql复制

SELECTIFNULL(MAX(IFNULL(ORDER_NO, 0)), 0)
FROMscm_web_classify_tab
WHEREDELETE_FLAG = 0AND TENANT_ID = #{tenantId}
  1. IFNULL(ORDER_NO, 0)

    • 这个函数确保 ORDER_NO 如果为 NULL,则用 0 替代。这样可以避免 MAX 函数在处理 NULL 值时的问题。

  2. MAX(...)

    • 这个函数用于获取 ORDER_NO 的最大值。如果所有 ORDER_NO 都是 NULLMAX 函数会返回 NULL

  3. IFNULL(..., 0)

    • 这个函数确保如果 MAX 函数的结果是 NULL,则用 0 替代。这样可以确保最终结果总是返回一个数字,而不是 NULL

 


http://www.ppmy.cn/devtools/158402.html

相关文章

Flutter PIP 插件 ---- iOS Video Call

以下是一篇关于在 iOS 中实现画中画(PiP)功能的技术博客: iOS 画中画(PiP)功能实现指南 简介 画中画(Picture in Picture, PiP)是一项允许用户在使用其他应用时继续观看视频内容的功能。本文将详细介绍如何在 iOS 应用中实现 PiP 功能。 系统要求 iOS 15.0 及以上版本AVKi…

Python:凯撒密码

题目内容&#xff1a; 凯撒密码是古罗马恺撒大帝用来对军事情报进行加密的算法&#xff0c;它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列该字符后面第三个字符&#xff0c;对应关系如下&#xff1a; 原文&#xff1a;A B C D E F G H I J K L M N O P Q R …

OpenVINO 2025.0重磅升级:开启⽣成式AI全场景⾰命!

2025年2⽉6⽇&#xff0c;英特尔OpenVINO™ 2025.0版本震撼发布&#xff0c;本次升级堪称近三年最⼤规模技术⾰新&#xff01;从⽣成 式AI性能跃升到全栈硬件⽀持&#xff0c;从开发者⼯具链优化到边缘计算突破&#xff0c;六⼤核⼼升级重新定义AI部署效率。 一&#xff0c;&a…

Flink-序列化

一、概述 几乎每个Flink作业都必须在其运算符之间交换数据&#xff0c;由于这些记录不仅可以发送到同一JVM中的另一个实例&#xff0c;还可以发送到单独的进程&#xff0c;因此需要先将记录序列化为字节。类似地&#xff0c;Flink的堆外状态后端基于本地嵌入式RocksDB实例&…

Django:构建高效Web应用的强大框架

在当今快速发展的Web开发领域&#xff0c;选择一个合适的框架对于项目的成功至关重要。Django&#xff0c;作为一个用Python编写的高级Web框架&#xff0c;凭借其强大的功能、灵活性和可扩展性&#xff0c;成为了众多开发者的首选。本文将深入探讨Django的特点、优势以及如何利…

PH热榜 | 2025-02-10

1. 2pr 标语&#xff1a;人工智能帮你把想法变成LinkedIn爆款 或者更口语化一点&#xff1a; AI帮你把点子变成LinkedIn上的热门帖子 介绍&#xff1a;用AI主持的访谈&#xff0c;把你的想法变成LinkedIn爆款帖子。录制你的想法&#xff0c;让AI帮你创作个性化、引人入胜的…

重构应用DeepSeek商城系统开发技术趋势

​在当今科技飞速发展的时代&#xff0c;AI人工智能已成为推动各行业变革的核心力量。DeepSeek 在短短一年多的时间里已经发布了多个版本的模型&#xff0c;包括 DeepSeek LLM、DeepSeek-V2、DeepSeek-V3 以及 DeepSeek-R1 等&#xff0c;每一次发布都在性能和功能上实现了重大…

STM32外设分类--最小系统引脚和GPIO引脚

简介: 本文将stm32f103外设按照功能分个类别&#xff0c;便于记忆。下面的几张图一定要熟悉&#xff0c;后期编写代码时能够快速找到想要的功能和对应的引脚。 使用的工具链是&#xff1a;使用CubeMX完成keil5工程搭建和引脚初始化功能&#xff0c;然后用Keil5编译和调…