Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用多个连接更新多个列

使用多个连接更新多个列
EN

Stack Overflow用户
提问于 2018-01-09 07:45:10
回答 3查看 905关注 0票数 0

我正在从外部源接收一些数据,其中实际值被ids替换。

代码语言:javascript
运行
AI代码解释
复制
| Serial# | Sex | Married | Income |
------------------------------------
|    1    |  1  |    2    |   1    |
|    2    |  1  |    1    |   3    |
|    3    |  1  |    2    |   2    |

现在,我有一个维度表,其中包含每个id的值:

代码语言:javascript
运行
AI代码解释
复制
| Tag     |        Value        | Id |
--------------------------------------
| Sex     |  M                  | 1  |
| Sex     |  F                  | 2  |
| Married |  Y                  | 1  |
| Married |  N                  | 1  |
| Income  |  Less than 100      | 1  |
| Income  |  Between 100 and 1K | 2  |
| Income  |  More than 1K       | 3  |

现在,我希望用第一个表中的值替换第一个表中三个列Sex、Married和Income的所有in。

同样,如果一个未知的Id进来了,它不在维度表中,我们希望用‘未知’来更新。

这只是一个例子。我的数据包含大约100个这样的列。实现这一目标的最便宜和最快的方法是什么?我不想写成百上千条更新语句。

EN

回答 3

Stack Overflow用户

发布于 2018-01-09 07:48:54

我不认为需要更新任何东西,您可以连接这两个表:

代码语言:javascript
运行
AI代码解释
复制
select i."Serial#", 
       sd."Value" as sex, 
       md."Value" as married,
       id."Value" as income
from the_intput_table i
  join dimension sd on sd.id = i."Sex" and sd."Tag" = 'Sex'
  join dimension md on md.id = i."Married" and md."Tag" = 'Married'
  join dimension id on id.id = i."Income" and id."Tag" = 'Income'
票数 1
EN

Stack Overflow用户

发布于 2018-01-09 07:54:57

如果您想用列ID的值更新现有的列ID,那么可以使用下面的查询来实现:

代码语言:javascript
运行
AI代码解释
复制
UPDATE
table1
SET
    table1.Sex = Table_B.col1,
    table1.Married = Table_B.col1,
    table1.Income = Table_B.col1,
FROM table1
     INNET JOIN Dimension  as d1 ON t1.Sex = d1.Id AND d1.Tag = 'Sex'
     INNET JOIN Dimension  as d2 ON t1.Married = d2.Id AND d2.Tag = 'Married'
     INNET JOIN Dimension  as d3 ON t1.Income = d3.Id AND d3.Tag = 'Income'
票数 0
EN

Stack Overflow用户

发布于 2018-01-21 06:05:28

对上面的代码做少许修改,

代码语言:javascript
运行
AI代码解释
复制
 select i.Serial#, 
    case when sd.Value is not null then sd.Value else 'UNKNOWN' end as sex, 
    case when md.Value is not null then md.Value else 'UNKNOWN' end as married,
    case when id.Value is not null then id.Value else 'UNKNOWN' end as income
    from the_intput_table i
     left outer join dimension sd on sd.id = i.Sex and sd.Tag = 'Sex'
     left outer join dimension md on md.id = i.Married and md.Tag = 'Married'
     left outer join dimension id on id.id = i.Income and id.Tag = 'Income'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48163461

复制
相关文章
Laravel 使用多个数据库连接
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/105853.html原文链接:https://javaforall.cn
全栈程序员站长
2022/08/09
1.5K0
使用EasyPOI实现列数动态生成,多个sheet生成
程序员朱永胜
2023/08/17
1.2K0
使用EasyPOI实现列数动态生成,多个sheet生成
Django批量更新多个属性
有时候我们需要同时(一次性)更新某个用户的多条属性。 1. 用户model如下: class User(models.Model): UID = models.CharField('员工uid', max_length=200,) name = models.CharField('员工名字', max_length=200,) mobile = models.CharField('手机号', max_length=200,) mail = models.EmailField(u'邮箱', max_lengt
BigYoung小站
2020/05/04
2.1K0
如何管理多个 SSH 连接
每台基于   / Unix 的机器都有一个  .ssh 文件夹,您可以在其中保存 ssh 密钥。在这个文件夹中,你可以创建一个名为  config 的文件,可以将所有远程机器的详细信息放在这个配置文件中。
用户1685462
2021/09/04
1.2K0
Jquery如何删除table里面checkbox选中的多个行与多个列
(adsbygoogle = window.adsbygoogle || []).push({});
tianyawhl
2019/04/04
4.3K0
Python pandas按列拆分Excel为多个文件
还是用循环数据的方法来进行逐行判断并进行组合,再拆分。总是感觉与VBA的差别不大,Python的强大功能没能体现出来。今天终于学习到了。
哆哆Excel
2022/10/25
3.3K0
Python pandas按列拆分Excel为多个文件
Python pandas依列拆分为多个Excel文件
问题:Python pandas依列拆分为多个Excel文件 实例:下面成绩表中按“班别”拆分为多个工作簿,一个班一个文件 ====代码==== import pandas as pd data = pd.read_excel("D:\yhd_python\yhd-python依列拆分Excel\汇总.xlsx") rows = data.shape[0] #获取行数 shape[1]获取列数 print(rows) data["身份证"]=[" %i"%i for i in data["身份证"]]
哆哆Excel
2022/10/25
1.6K0
Python pandas依列拆分为多个Excel文件
springboot连接多个数据库
今天借到一个新的需求,需要把自己数据库某个表的数据迁移到别的数据库中,于是百度,中间出现了一些细节的问题,解决花了点时间,在此记录一下,下次避免出现过的错误
全栈程序员站长
2022/09/12
1.6K0
管理创建的多个 SSH 连接命令
每台基于 Linux / Unix 的机器都有一个 .ssh 文件夹,您可以在其中保存 ssh 密钥。在这个文件夹中,你可以创建一个名为 config 的文件,可以将所有远程机器的详细信息放在这个配置文件中。
用户7639835
2021/09/01
1.5K0
赶快更新!Apple 出现多个安全漏洞
The Hacker News 网站披露,苹果公司近日推出了 iOS、iPadOS、macOS 的安全更新,以解决一个 0day 漏洞(追踪为 CVE-2023-23529)。 研究表明,CVE-2023-23529 漏洞与 WebKit 开源浏览器引擎中的类型混淆错误有关,一旦攻击者成功利用,便可在目标系统上执行任意代码。 WebKit 是一个主要用于 Safari,Dashboard,Mail 和其它一些 Mac OS X 程序的开源浏览器引擎,在手机上的应用十分广泛(例如 Android、iPhon
FB客服
2023/02/24
5270
赶快更新!Apple 出现多个安全漏洞
mybatis 使用tips - 使用多个参数
执行如下命令: mvn -Dmybatis.generator.overwrite=true mybatis-generator:generate 可以使用mybatis generator mybatis 使用多个参数 自定义方法需要根据多个查询条件去查询: SELECT * FROM `db_demo`.`hot_topic` WHERE lang='english' AND category='017' AND topic_type='video' ORDER BY score DESC; 推荐使用
千往
2018/01/24
1.7K0
使用VIM搜索多个文件[通俗易懂]
使用vim可以方便的搜索多个文件,这个时侯需要使用的命令是:vimgrep。vimgrep的命令格式是:
全栈程序员站长
2022/11/09
2.1K0
使用mysqldump备份多个库
一个数据库实例中有20+个库,本次备份需要备份其中的10+个库,使用mysqldump直接进行备份踩到一个warning和一个error。
阿dai学长
2020/05/27
4.1K0
pandas合并和连接多个数据框
pandas作为数据分析的利器,提供了数据读取,数据清洗,数据整形等一系列功能。当需要对多个数据集合并处理时,我们就需要对多个数据框进行连接操作,在pandas中,提供了以下多种实现方式
生信修炼手册
2020/07/02
2K0
【安全更新】微软11月安全更新多个产品高危漏洞
北京时间11月11日,微软发布11月安全更新补丁,修复了112个安全问题,涉及Microsoft Windows、Microsoft Office、Microsoft Exchange Server、Visual Studio、Windows Defender等广泛使用的产品,其中包括远程代码执行和权限提升等高危漏洞类型。
绿盟科技安全情报
2020/11/16
9910
苹果iOS7.1更新将会修复多个漏洞
外媒报道,他们获得消息iOS7.1更新将会修复多个漏洞,完善用户界面的元素,不过该新版本的发布时间取决于移动设备管理(MDM)功能的完善进程,预计的发布时间是在3月15日。 报道表示目前苹果与多个MDM商家以及机构客户合作,完善iOS的管理部署,而最终的完善成果将会与iOS 7.1同时发布。   目前苹果已有Volume Services网站,它方便客户登陆,支持“自动化MDM注册”以及“应用和书籍批量购买”。MDM允许教育、政府部门以及公司组织安全地集中配置大量移动设备,包括自制应
安恒信息
2018/04/10
6800
seaborn可视化数据框中的多个列元素
seaborn提供了一个快速展示数据库中列元素分布和相互关系的函数,即pairplot函数,该函数会自动选取数据框中值为数字的列元素,通过方阵的形式展现其分布和关系,其中对角线用于展示各个列元素的分布情况,剩余的空间则展示每两个列元素之间的关系,基本用法如下
生信修炼手册
2020/10/19
5.4K0
【安全更新】微软5月安全更新多个产品高危漏洞通告
5月12日,微软发布5月安全更新补丁,修复了55个安全漏洞,涉及Windows、Microsoft Office、Exchange Server、Visual Studio Code、Internet Explorer等广泛使用的产品,其中包括远程代码执行和权限提升等高危漏洞类型。
绿盟科技安全情报
2021/05/14
1.3K0
【安全更新】微软2月安全更新多个产品高危漏洞通告
北京时间2月10日,微软发布2月安全更新补丁,修复了56个安全问题,涉及Microsoft Windows、Microsoft Office、Microsoft Exchange Server、Visual Studio、Microsoft .NET Framework等广泛使用的产品,其中包括远程代码执行和权限提升等高危漏洞类型。
绿盟科技安全情报
2021/03/03
1K0
点击加载更多

相似问题

通过连接多个列来更新列

21

使用多个连接更新表

15

将多个列与多个列连接

32

使用多个内部连接更新表自己的列并进行更新

11

连接多个列?

70
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文