PostgreSQL 连接更新操作

news/2024/7/9 22:58:39 标签: postgresql, 数据库

 假设有两个表,table_atable_b,它们有一个共同的列 common_column,我们想要通过连接这两个表并根据某些条件更新 table_a 的列。

-- 创建表 table_a
CREATE TABLE table_a (
    id SERIAL PRIMARY KEY,
    common_column INT,
    data_a VARCHAR(255)
);

-- 创建表 table_b
CREATE TABLE table_b (
    id SERIAL PRIMARY KEY,
    common_column INT,
    data_b VARCHAR(255)
);

-- 插入一些示例数据
INSERT INTO table_a (common_column, data_a) VALUES (1, 'A1'), (2, 'A2'), (3, 'A3');
INSERT INTO table_b (common_column, data_b) VALUES (1, 'B1'), (2, 'B2'), (3, 'B3');

 

现在,我们使用 UPDATE 语句连接这两个表并更新 table_a 的数据:

UPDATE table_a
SET data_a = table_b.data_b
FROM table_b
WHERE table_a.common_column = table_b.common_column;

在这个例子中,我们使用 UPDATE ... FROM ... WHERE 语法。这个语句将 table_adata_a 列更新为 table_b 的对应行的 data_b 列的值,条件是它们的 common_column 列相匹配。

更偏向实际开发的SQL示例:

update table_a set column_a=updatetable.column_a
from (
select column_a,id from table_b where "id" in (select base_id from table_a gausa where column_b is not null and column_c=0 and column_a is null)


) updatetable where table_a.column_b is not null and table_a.column_c=0 and table_a.column_a is null
and updatetable.id=table_a.base_id


http://www.niftyadmin.cn/n/5238412.html

相关文章

直观清晰的带你了解KMP算法(超详细)

KMP算法用来找某个字符串是否存在某个连续的真子串的 下面举一个例子让抽象的KMP算法更加直观,有助于理解 首先我们要了解KMP算法首先要找到一个next数组来表示主串中每一个字符的回退的下标(这个下标是对于真子串而言的,主串不需要回退&…

如何正确使用 HTML 模板?

HTML(Hypertext Markup Language)是一种标记语言,用于构建网页的结构和内容。HTML模板是一种通用的结构,允许开发人员在多个页面中重复使用相同的布局和结构。使用HTML模板可以提高代码的可维护性和重用性,减少重复劳动…

如何制作教育培训小程序

教育培训行业近年来发展迅速,越来越多的机构开始意识到通过小程序来提供在线教育服务的重要性。小程序不仅可以为用户提供便捷的学习体验,还可以增加机构的知名度和品牌影响力。那么,如何制作一款教育培训小程序呢? 首先&#xff…

链表【3】

文章目录 🐳23. 合并 K 个升序链表🐟题目🐬算法原理🐠代码实现 🐷25. K 个一组翻转链表🐖题目🐽算法原理🍧代码实现 🐳23. 合并 K 个升序链表 🐟题目 题目链…

54.螺旋矩阵(顺时针打印矩形元素)

题目 class Solution {public List<Integer> spiralOrder(int[][] matrix) {int m matrix.length, n matrix[0].length;int leftUpM 0, leftUpN 0, rightDownM m - 1, rightDownN n - 1;List<Integer> res new ArrayList<>();while (leftUpM < ri…

快速学习PyQt5的高级自定义控件

Pyqt5相关文章: 快速掌握Pyqt5的三种主窗口 快速掌握Pyqt5的2种弹簧 快速掌握Pyqt5的5种布局 快速弄懂Pyqt5的5种项目视图&#xff08;Item View&#xff09; 快速弄懂Pyqt5的4种项目部件&#xff08;Item Widget&#xff09; 快速掌握Pyqt5的6种按钮 快速掌握Pyqt5的10种容器&…

C# 热键注册工具类

写在前面 介绍一个验证过的热键注册工具类&#xff0c;使用系统类库user32.dll中的RegisterHotkey函数来实现全局热键的注册。 代码实现 [Flags]public enum KeyModifiers{Alt 1,Control 2,Shift 4,Windows 8,NoRepeat 0x4000}public static class HotKeyHelper{[DllImp…

基于springboot+vue的景区民宿预约系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…