SQL批量操作大全

2023-11-14

1.list嵌套list查询SQL
  <!--组合嵌套查询-->
    <resultMap id="queryOrderGoodsOD" type="com.mengniu.vo.OrderVO">
        <id column="orderId" property="orderId" jdbcType="INTEGER"/>
        <result column="orderNumber" property="orderNumber" jdbcType="VARCHAR"/>
        <result column="orderDate" property="orderDate" jdbcType="TIMESTAMP"/>
        <result column="orderStatus" property="orderStatus" jdbcType="VARCHAR"/>
        <result column="totalQuantity" property="totalQuantity" jdbcType="INTEGER"/>
        <result column="totalActualPay" property="totalActualPay" jdbcType="VARCHAR"/>
        <collection property="goods" javaType="java.util.ArrayList" select="com.mengniu.mapper.ConsumerMapper.queryGoodList"
                     ofType = "com.mengniu.vo.GoodsVO" column="{orderId=orderId,totalActualPay=totalActualPay}">
            <result column="name" property="name" jdbcType="VARCHAR"/>
            <result column="size" property="size" jdbcType="INTEGER"/>
            <result column="url" property="url" jdbcType="VARCHAR"/>
        </collection>
    </resultMap>
 <!--订单列表查询商品信息-->
    <select id="queryGoodList" resultType="com.mengniu.vo.GoodsVO">
        SELECT
            top.name name,
            top.num size,
            top.mainUrl url
        FROM
            t_order_product top
        WHERE
            top.orderId = #{orderId}
   </select>

 <!--订单分页查询列表-->
    <select id="queryOrderPageList" resultMap="queryOrderGoodsOD">
        SELECT
            too.id orderId,
            too.orderNumber, -- 订单编号
            too.createdAt orderDate, -- 订单时间
            too.status orderStatus, -- 订单状态
            too.totalQuantity totalQuantity, -- 购物订单总数
            too.payAmount totalActualpay -- 购物订单实际支付金额
        FROM
            t_ordinary_order too
        <where>
            too.cusId = #{customerId}
            <if test="dto.type != null">
                and too.status = #{dto.type}
            </if>
        </where>
        <if test="dto.start != null and dto.pageSize != null">
            LIMIT #{dto.start},#{dto.pageSize}
        </if>
    </select>

2.批量新增SQL
   <insert>
       INSERT INTO
            dpo_personnel_project_summary_report ( id, staff_id, staff_name, staff_depart_name, pteaioi_type, staff_rank, user_status, user_skill, base_address, work_address, create_time )
        <foreach collection="list" item="obj" open="VALUES" close=";" separator=",">
            ( #{obj.id}, #{obj.staffId}, #{obj.staffName}, #{obj.staffDepartName}, #{obj.pteaioiType}, #{obj.staffRank}, #{obj.userStatus}, #{obj.userSkill}, #{obj.baseAddress}, #{obj.workAddress}, #{obj.createTime} )
        </foreach>
 </insert>

3.批量编辑SQL
入参:List<QueryDeviceVO> list
<update id="batchUpdateOrder" parameterType="java.util.List" >
        update t_device
        <trim prefix="set" suffixOverrides=",">
            <trim prefix="device_longitude =case" suffix="end,">
                <foreach collection="list" item="i" index="index">
                    <if test="i.deviceLongitude!=null">
                        when device_code=#{i.deviceCode} then #{i.deviceLongitude}
                    </if>
                </foreach>
            </trim>
            <trim prefix="device_latitude =case" suffix="end,">
                <foreach collection="list" item="i" index="index">
                    <if test="i.deviceLatitude!=null">
                        when device_code=#{i.deviceCode} then #{i.deviceLatitude}
                    </if>
                </foreach>
            </trim>
            <trim prefix="device_address =case" suffix="end,">
                <foreach collection="list" item="i" index="index">
                    <if test="i.deviceAddress!=null">
                        when device_code=#{i.deviceCode} then #{i.deviceAddress}
                    </if>
                </foreach>
            </trim>
        </trim>
        where
        <foreach collection="list" separator="or" item="i" index="index" >
            device_code=#{i.deviceCode}
        </foreach>
 </update>

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL批量操作大全 的相关文章

  • SQL - .NET - SqlParameters - AddWithValue - 未指定参数类型时是否会对性能产生负面影响?

    http msdn microsoft com en us library system data sqlclient sqlparametercollection addwithvalue aspx http msdn microsoft
  • SQL语句帮助--选择今天下单的客户

    假设我有一个存储客户订单 ID 的表 例如 客户 ID 订单编号 订购日期 如何获取今天下单的所有客户 OrderDate 也将是一个 DateTime 就像是 SELECT DISTINCT CustomerID FROM TableNa
  • 将 .NET 中的输出字符串中的列表中的所有项目连接在一起

    如何编写 LINQ 表达式 或其他任何表达式 来从列表中选择一个项目并将它们连接在一起 Example IList
  • 使用 SQL 压缩时间段

    我有一个很大的数据集 出于这个问题的目的 它有 3 个字段 组标识符 从日期 To Date 在任何给定的行上From Date将永远小于To Date但在每一组中 由日期对表示的时间段 没有特定的顺序 可以重叠 包含在另一个中 甚至是相同
  • Sequelize 中的 FOR SHARE 和 FOR UPDATE 语句

    当我们使用事务时 常规 SQL 查询可以包含 SELECT FOR SHARE 和 SELECT FOR UPDATE 语句 有没有办法用 Sequelize 设置相同的语句 我还没有找到这些选项 也许有一些技巧 需要什么 您可以在这里阅读
  • 如何将一个列表中的2个项目分组到另一个列表中

    至于这个例子 获取 List 中不同值的列表 https stackoverflow com questions 10255121 get a list of distinct values in list 这演示了如何根据 1 项获取不同
  • 如何使实体框架存储过程异步?

    我有一个函数 ReturnStatementDetailsForSubRepAsync 它使用一个 linq 表达式 我可以使用内置函数轻松地使其异步 例如 ToListAsync 现在 因为此 LINQ 函数是异步的 所以我必须使父函数异
  • 将不规则时间序列拆分为规则月平均值 - R

    为了确定季节性对能源使用的影响 我需要将计费数据库中的能源使用信息与每月温度进行调整 我正在使用一个计费数据集 其中包含不同长度以及开始日期和结束日期的账单 并且我希望获得每个月内每个帐户的月平均值 例如 我有一个计费数据库 具有以下特征
  • SQLite:具有四个表的完全外连接

    编辑 可以找到这个问题的扩展here https stackoverflow com questions 47667304 sqlite full outer join with four tables with 30 columns 我想
  • Go SQL查询不一致

    我在执行查询时遇到一些非常奇怪的不一致 并且想知道是否有人知道原因 想象一下我有一个定义如下的结构 type Result struct Afield string db A Bfield interface db B Cfield str
  • 为什么调用 take() 方法时 Slick 会生成子查询

    I use Slick http slick typesafe com 1 0 0 RC1 我对表对象有这样的定义 object ProductTable extends Table Int String String String Dou
  • SQL 内连接两个具有相同列名的表

    我有两个表 其列数不同 我不知道有多少列或名称是什么 例如表 A 和表 B TableA ID B ID variable TableB ID variable Query SELECT TableA TableB FROM TableA
  • MySQL - 基于日期加入

    是否可以根据同一日期连接两个表 而不考虑时间 就像是 从预约左侧加入销售 约会 日期 销售 日期 唯一的问题是它是一个日期时间字段 所以我想确保它只查看日期并忽略时间 你可以这样做 FROM appointments LEFT JOIN s
  • SQL链接服务器查询非常非常慢

    我正在通过链接服务器从视图中提取大量数据 我使用的是 SQL Server 2012 链接服务器是 SQL Server 2008 我的选择语句是 SELECT INTO MY LOCAL TABLE FROM SELECT FROM LI
  • 在 SQLAlchemy 中选择 NULL 值

    这是我的 PostgreSQL 表 test gt create table people name varchar primary key marriage status varchar test gt insert into peopl
  • 相当于 pandas 'transform' 的 SQL 是什么?

    假设您有以下 SQL 表 A B C 2 1 4 3 4 5 3 1 1 1 4 0 5 0 1 并且您想要添加 显示一个列 其中包含 A 列对于 B 列的每个不同值的平均值 或任何其他聚合函数 您想要保留所有列 所以结果会是这样的 A B
  • 选择出现多次的行

    TableOne PersonId PersonScore 1 10 1 20 2 99 2 40 3 45 我只需要获取 PersonId 多次出现的那些行 例如以下是我想要实现的结果集 PersonId PersonScore 1 10
  • sql server中的str_to_date函数?

    MySQL有一个函数叫STR TO DATE 将字符串转换为日期 http dev mysql com doc refman 5 1 en date and time functions html function str to date
  • 如何将Excel文件导入到sql server 2008

    如何在不使用导入向导的情况下使用 sql 查询将 excel 文件导入到 sqlserver2008 Express Edition 中的新表中 谢谢 普拉迪 有一篇微软知识库文章列出了所有可能的方法 http support micros
  • C#无循环方式将字符串拆分为多维数组或锯齿状数组

    如何在不循环的情况下将字符串拆分为多维数组或锯齿状数组 我看到一个代码片段 其中有人使用文件流执行此操作 但我不知道如何使其适用于我的字符串 我的字符串类似于1 2 3 1 4 1并可以分为ID Qty 这是我看到的代码 string li

随机推荐

  • mysql java测试_JAVA 访问MySQL数据库(使用方法及测试)

    说明 本文使用的JDBC框架是基于Java SE 1 8 MySQL Eclipse 工具下载 MySQL V5 5 x64 64位 MySQL V5 5 x86 32位 要根据你电脑的情况选择相应的MySQL版本 我的电脑是64位 所以本
  • 【牛客SQL】SQL17 获取当前薪水第二多的员工的emp_no以及其对应的薪水salary

    题目描述 描述 有一个薪水表salaries简况如下 请你获取薪水第二多的员工的emp no以及其对应的薪水salary 示例1 输入 drop table if exists salaries CREATE TABLE salaries
  • Matlab批量拟合曲线并绘制在一张图上

    文章目录 简单的拟合 批量拟合并呈现在一张图上 最终结果与完整代码 简单的拟合 在命令行输入 cftool 可以启动工具箱 1 在 选择数据 中导入数据 2 选择拟合方法 matlab提供的方法或者你自己定义的函数 matlab提供的方法
  • 数据结构——非线性结构(树与二叉树)

    文章目录 一 非线性结构的概述 二 树的基本概念 1 树的定义 2 专业术语 3 树的性质 三 树的分类 1 一般树 2 二叉树 是有序树 2 1 概念 2 2 分类 1 一般二叉树 2 满二叉树 3 完全二叉树 2 3 二叉树的性质 2
  • 【西南交大电子实习】用ESP32和HX711实现的称重计/电子秤的Arduino代码

    参考 https randomnerdtutorials com esp32 load cell hx711 7月12日 Update 修改为克g 盎司oz 克拉ct之间的切换 增加计数功能版本代码 需要安装的arduino库 Adafru
  • JS变量的使用【弹出输入框,提示用户名输入姓名;弹出一个对话框,输出用户刚才输入的姓名】

    一 代码 二 结果显示 1 输入名字 2 输出名字 三 补充变量 1 变量只声明不赋值 输出结果是undefined 2 变量不声明不赋值 直接使用某个变量会报错 3 不声明直接赋值使用 也可使用 4 尽量不要用name作为变量名
  • 我玩了玩chatGPT,她确实NB!

    大家好 我是北妈 0 如果这几天你不知道一个叫chatGPT的东西 那说明你网感真不太好了 或者说你过的很幸福 完全不需要关注网络世界的新动向 因为毫不夸张地说 北妈个人未来可以预见的是 普通互联网从业人士已经赶不上时代趋势 以后如果地球没
  • Spring Source Tools安装Virgo插件

    1 STS 3 7 4 安装Virgo插件失败 需要先安装 先下载一个STS IDE 地址 http spring io tools sts all 然而在STS中添加Virgo插件 如果你直接在Install new software中输
  • mysql 1054错误 "Unknown column 'xxx' in 'field list'"

    出现问题的代码如下 s 测试 sql INSERT INTO ffff ID VALUES s s try cursor execute sql db commit print 写入成功 except Exception as e prin
  • FPGA基本IP核之FIFO(异步)

    异步FIFO 创建新的异步FIFO IP核 可以看出相比于同步FIFO这里做了写和读两侧并且各自用一个时钟 一般选用二级同步 然后勾选读和写两侧需要用到的三种信号 选择添加额外的MSB 由于分成两侧时 中间不知道数据是否写满了或者写空了 添
  • GE IS215VCMIH2BB IS200VCMIH2BCC 数字量输入模块

    GE IS215VCMIH2BB 和 IS200VCMIH2BCC 是数字量输入模块 通常用于工业自动化和控制系统中 用于接收和处理数字量输入信号 以下是这些模块可能具备的一些常见功能和产品特点 多通道输入 这些模块通常具有多个数字量输入通
  • 【数据读写】csv文件与xls/xlsx文件

    目录 一 csv格式与xls xlsx格式的区别 二 两种文件格式的读写操作 1 csv文件的读 写函数 csvread csvwrite 2 xls xlsx文件的读 写函数 xlsread xlswrite 三 应用案例 1 实例1 参
  • STM32寄存器

    问题 什么是寄存器 什么是存储器映射 什么是寄存器映射 STM32架构 程序存放在FLASH中 const的常量存放在FLASH中 变量 全局 静态变量 存放在SRAM中 System总线主要读取寄存器 AHB 高速 总线上挂着SDIO 复
  • 【微信公众号开发系列文章】二、Access token相关操作

    所有内容首发微信公众号 WEB前端李志杰 欢迎关注 点赞并转发 写在最前 关于获取Access token这部分内容建议仔细阅读官方文档 本文章对于重点内容进行了摘录 有利于大家把握重点部分 最后文章中会给出这一部分的程序设计思路及示例代码
  • c++编译踩坑大赏

    1 编译错误error binding const Person to reference of type Person discards qualifiers 意思是在进行函数传参时 不能把常变量 这里是常引用 传递给非常变量 Perso
  • 在vs2019上编写Linux系统下的c++程序_远程 Linux 系统上的 Ubuntu

    在vs2019上编写Linux系统下的c 程序 远程 Linux 系统上的 Ubuntu 正文 遇到的问题 方法一 如果方法一无法解决 您可以尝试方法二 正文 第一步 先将自己的Linux 系统设为静态IP 具体操作如下 在修改以下文件时
  • 做好三件事,就能避免远程办公变成“肥宅办公”

    随着上海疫情持续 越来越多的白领开启了远程办公 可由于宅家办公运动量小 一天三餐还是照常吃 因此有些人的远程办公渐渐变成了 肥宅办公 自己变得不爱动弹 体态也变得臃肿 这可怎么办才好 专业人士表示 如果做到了这三件事就可以避免远程办公变成
  • 微信小程序(或uniapp)引入腾讯视频插件播放视频

    1 申请插件 注意 个人开发者无法使用 登录微信公众平台 在你的小程序后台的设置 第三方服务 插件管理 搜索插件并点击添加 添加成功之后 点击详情 查看该插件的具体信息 拿到该插件的appid以及版本号 github地址 https git
  • 使用ogg 从oracle 同步mysql遇到问题记录

    ORACLE 同步mysql遇到问题 2018 08 27 10 59 54 WARNING OGG 01004 Aborted grouped transaction on DESIGNXXxx Database error 1105 S
  • SQL批量操作大全

    1 list嵌套list查询SQL