两个表取差集再插入到另一张表中

news/2024/9/20 0:02:11

@

目录
  • 概要
  • 思路梳理
  • 实现步骤
  • 小结

概要

工作中采集时候遇到一个问题,就是两张结构一样的表数据不同,哪里不同呢,如t1表是基础表,里面数据量大,但是它不全,t2表有少数t1的数据也有一些自己额外的数据,我的需求是把t2里面t1没有的数据插入到t1中

思路梳理

这种也简单就是在t2中取t1和t2的差集,然后取出这些id再insert到t1中即可。
我的两个表都有一个共通的other_id,这个字段数据是唯一的,可以从other_id下手

实现步骤

  1. 取出他们两个的差集,从t2中
SELECTt1.*
FROMa_film t1
LEFT JOINa_film_copy3 t2
ONt1.other_id = t2.other_id
WHEREt2.other_id IS NULL;
  1. 直接复制结果中所有的id,然后粘贴到sublime中,然后替换以逗号隔开

  2. 取出这些id然后对应插入到t1

INSERT INTO a_film_copy3 (title, cover, url, rating, casts, star, directors, cover_x, cover_y, other_id)
SELECT title, cover, url, rating, casts, star, directors, cover_x, cover_y, other_id from a_film where id in(...)

小结

这个方法目前只适用于数量级较少的场景中,我的是1w左右,查询速度2-3秒,如果1百万、1千万级估计吃不消,那时候可能用脚本跑更合适些,暂记录这么多。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/47577.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

拉取 gitee 代码,配置SSH,Please make sure you have the correct access rights

拉取 gitee 代码,Please make sure you have the correct access rights git clone git@gitee.com:paddlepaddle/PaddleNLP.git生成 RAS 秘钥 ssh-keygen -t rsa -C "Gitee SSH Key" -t key 类型 -C 注释将C:\Program Files\Git\usr\bin 加入环境变更直接回车设置S…

java调用grpc

1.创建proto文件 // 使用该proto文件可以定义交互的服务接口,基于该文件编译成的源文件可以分别复制到 client端和server端,便于两者使用syntax = "proto3"; // 定义语法类型,通常proto3好于proto2,proto2好于proto1,如果不指定,默认使用proto2,必须位于第一行…

MoneyPrinterPlus:AI自动短视频生成工具-腾讯云配置详解

详细介绍如何使用在MoneyPrinterPlus中配置使用腾讯云语音服务,实现AI自动短视频生成。MoneyPrinterPlus可以使用大模型自动生成短视频,其中的语音合成和语音识别部分需要借助于一些第三发云厂商的语音服务。 很多小伙伴可能不知道应该如何配置,这里给大家提供一个详细的腾讯…

Photoshop增加对.ico,.webp,.avif格式的支持,如何让ps可以打开和保存avif,webp,ico格式

压缩尺寸对比: 安装方法: 将解压缩得到的.8bi文件复制到Photoshop安装文件下的一下路径即可: Adobe Photoshop 2023\Required\Plug-ins\File Formats 附件中的8bi插件,支持x64的都有,x32的只有部分有,注意区分。Photoshop插件下载: 链接:https://pan.baidu.com/s/1vsZ…

如何在Spring Boot框架下实现高效的Excel服务端导入导出?

前言 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。今天我们就使用纯前对按表格控件带大家了解,如何在Spring Boot框架下实现Excel服务端…

rhel9.2离线下载安装包,并安装

linux离线下载安装包 [root@localhost local]# mkdir files#创建文件夹[root@localhost local]# cd files[root@localhost files]# pwd/usr/local/files#查看下载文件夹路径[root@localhost files]# dnf install --downloadonly --downloaddir=/usr/local/files vim gcc gcc-c+…

weblogic线程阻塞性能调优(图解)

转载:https://www.cnblogs.com/summer520/p/3656151.html 转自:http://blog.csdn.net/z69183787/article/details/12647539声明:出现这个问题有程序方面、网络方面、weblogic设置方面等等原因,此文章主要讲述由于weblogic设置而导致的解决办法。 因为: 1.程序问题,需要项…