Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >基于列的条件的联接

基于列的条件的联接
EN

Stack Overflow用户
提问于 2020-03-18 20:00:18
回答 1查看 35关注 0票数 0

我有2个表,列在下面

Table1

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
col1   col2   col3     val
 11     221     38      10
null    90      null     989
78     90       null     77

table2

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
col1   col2   col3  
 12     221    78
 23     null   67 
 78      90     null

我想要这样的输出

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
col1   col2   col3     val     matchingcol
 11     221     38      10       col2
null    90      null     null      null
78     90       null     77       col1

我想在第一个col1上连接两个表,如果值匹配,则停止;如果不在col2上连接,则停止;如果匹配,则在col3上停止否则连接;如果有任何列与else null匹配,则填充val,然后在matchingcol列中填充该列

我可以通过使用左连接来实现这一点。如果有更好的办法,请告诉我。

EN

回答 1

Stack Overflow用户

发布于 2020-03-18 20:03:49

可以使用多个joins:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
select t1.*,
       (case when t2_1.col1 is not null then 'col1'
             when t2_1.col2 is not null then 'col2'
             when t2_1.col3 is not null then 'col3'
        end) as matchingcol
from table1 t1 left join
     table2 t2_1
     on t2_1.col1 = t1.col1 left join
     table2 t2_2
     on t2_2.col2 = t1.col2 and t2_1.col1 is null left join
     table2 t2_3
     on t2_3.col3 = t1.col3 and t2_2.col2 is null
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60746734

复制
相关文章
Ext根据条件显示隐藏列
  写在ExtonReady函数里面,并在表格成功渲染之后,可以添加判断是否隐藏或者显示某一列
河岸飞流
2019/08/09
2.7K0
编写 SQL 的排除联接
有两个表,就叫源表和目标表吧。它们有一个相同的字段,通过该字段可以把源表和目标表关联在一起,我们希望从源表中检索到的记录里的关联字段的值没有存在目标表中。举个例子,源表 dept,目标表 emp,获取 dept 表中部门编号不在 emp 表中的记录。在检查两张表的数据后,我们发现 emp 表中没有部门编号 40 的数据。
白日梦想家
2020/07/20
1.2K0
编写 SQL 的排除联接
Vlookup多条件匹配(不用辅助列)
不用辅助列,用Vlookup函数做多条件匹配,具体如下: =VLOOKUP(条件1&条件2,if({1,0},条件1范围&条件2范围,结果范围),2,0) 注意: 1、同时按住CTRL+SHIFT+E
用户1756920
2018/06/21
8.6K0
基于R的竞争风险模型的列线图
将竞争风险模型的cmprsk包加载到R中,使用cuminc()函数和crr()函数可以进行考虑竞争风险事件生存数据的单变量分析和多变量分析。以往推文我们已经详细描述了基于R语言的实现方法,这里不再赘述。那么,您如何看待竞争风险模型呢?如何绘制竞争风险模型的列线图?在这里,我们演示如何绘制基于R的列线图。
用户6317549
2020/07/22
4.2K0
基于R的竞争风险模型的列线图
基于Spring的@Conditional注解进行条件加载
Spring Boot的强大之处在于使用了Spring 4框架的新特性:@Conditional注释,此注释使得只有在特定条件满足时才启用一些配置。
BUG弄潮儿
2020/06/15
2.9K0
SQL语句汇总(终篇)—— 表联接与联接查询
既然是最后一篇那就不能只列出些干枯的标准语句,更何况表联接也是SQL中较难的部分,所以此次搭配题目来详细阐述表联接。
_DIY
2020/05/29
1.4K0
SQL语句汇总(终篇)—— 表联接与联接查询
SQLServer中交叉联接的用法介绍
交叉联接是联接查询的第一个阶段,它对两个数据表进行笛卡尔积。即第一张数据表每一行与第二张表的所有行进行联接,生成结果集的大小等于T1*T2。
小明互联网技术分享社区
2021/04/26
7940
SQLServer中交叉联接的用法介绍
JCIM | 基于条件VAE的多目标分子优化
今天给大家介绍一篇最近发表在Journal of Chemical Information and Modeling 上的文章。在文章中,作者通过分子图条件变分自动编码器(MGCVAE)来生成具有指定特性的分子,并进行了多目标优化,以同时满足两个目标特性。
DrugAI
2022/11/28
1K0
JCIM | 基于条件VAE的多目标分子优化
五大方法添加条件列-python类比excel中的lookup
这是一个excel学习中很经典的案例,先构造评级参数表,然后直接用lookup匹配就可以了,具体不在这讲了,今天讲一下用python怎么实现该功能,总共五种(三大类:映射+numpy+pandas分箱)方法,提前预告下,最后一种数据分箱是与excel 中的 lookup最像的
诡途
2022/01/07
1.9K0
【实例分割】开源 | 基于条件卷积的实例分割网络
论文地址: http://arxiv.org/pdf/2003.05664v4.pdf
CNNer
2021/04/22
8590
Excel公式技巧:基于单列中的多个条件求和
基于列中的条件求和通常使用SUMIF函数或者SUMIFS函数,特别是涉及到多条件求和时。然而,随着条件的增多,公式将会变得很长,难以理解。而使用SUMPRODUCT函数,可以判断同一列中的多个条件且公式简洁。
fanjy
2022/11/16
5K0
Excel公式技巧:基于单列中的多个条件求和
长文 | 详解基于并行计算的条件随机场
之前写过CRF的详解,只是为了让大家详细了解下原理,但是那种是没有优化的,速度很慢。在实际应用中,还是需要用到batch,也就是需要用到GPU的,那么此时并行计算就变得极为重要。在研究到一定的程度上,困住你的不是算法本身,而是时间。同一件事,当然是越快越好。此时困住你的就是加速问题。
yuquanle
2019/09/30
1.3K0
长文 | 详解基于并行计算的条件随机场
基于拉格朗日乘子法与 KKT 条件的 SVM 数学推导
上一篇文章中,我们通过数学推导,将 SVM 模型转化为了一个有不等式约束的最优化问题。 SVM 数学描述的推导
用户3147702
2022/06/27
5960
基于拉格朗日乘子法与 KKT 条件的 SVM 数学推导
Excel公式技巧21: 统计至少在一列中满足条件的行数
在这篇文章中,探讨一种计算在至少一列中满足规定条件的行数的解决方案,示例工作表如下图1所示,其中详细列出了各个国家在不同年份废镍的出口水平。
fanjy
2020/03/25
4.1K0
Excel公式技巧21: 统计至少在一列中满足条件的行数
VBA:基于指定列删除重复行
文章背景:在工作生活中,有时需要进行删除重复行的操作。比如样品测试时,难免存在复测数据,一般需要保留最后测试的数据。之前通过拷贝行的方式保留最后一行的数据(参见文末的延伸阅读1),但运行效率较低。目前通过借助数组和字典达到删除重复行的效果。
Exploring
2022/12/18
3.4K0
VBA:基于指定列删除重复行
【Python】基于某些列删除数据框中的重复值
Python按照某些列去重,可用drop_duplicates函数轻松处理。本文致力用简洁的语言介绍该函数。
阿黎逸阳
2020/09/08
20.7K0
【Python】基于某些列删除数据框中的重复值
从全球联接指数报告看华为的战略意图
虽然华为HCC大会已经过去一段时间了,但是关于华为的讨论和热议一直在继续,在会上华为展示了自已高科技上的技术成果,还对外发布了自已从ICT到IT公司的定位,而最让T哥惊讶的是华为在这么重要的会议上,发布了全球联接指数,并且这一报告是华为联合第三方机构共同调研, 从这份报告中我们也能看到华为未来的战略些许端倪。 首先什么是全球联接指数,这两天媒体上也有不同的解读,全球联接指数用于衡量一个国家或行业的的ICT基础设施投入、使用程度及关键业务领域获益,是ICT发展和应用的“晴雨表“。该指数有助于各行各业洞察ICT
人称T客
2018/03/19
7650
最简单的 MyBatis Plus 的多表联接、分页查询实现方法
最近在加强 ITAEM 团队的一个 app 项目——学生教师学习交流平台 人员组成:安卓 + 前端 + 后台 后台 DAO 层借鉴了华工其他软件开发团队,使用了新颖强大的 MyBatisPlus 框架,里边有一个类似百度贴吧的发帖子的功能:
全栈程序员站长
2022/09/04
9.9K1
最简单的 MyBatis Plus 的多表联接、分页查询实现方法
华为的野心 要做企业万物联接的主导者
9.16日华为HCC云计算大会在上海世博会举行,汇聚了全球80多个国家超过10,000客户、合作伙伴和业内人士的大会,对于IT行业而言尚属首次,可见,华为在全球的影响力和认知度,但是高深的技术难以捉摸的行业术语,还是让很多媒体同行无处着手,而今天也有很多网友询问华为的云计算大会到底有哪些亮点?说实话华为的业务线过长,并非某一个人能够全部掌握,不过从华为轮值CEO徐直军和华为战略Marking 总裁徐文伟的演讲中,T哥总结了一句话,华为所做的一切都在为联接做准备,华为要做企业万物联接的主导者。 为此华为在
人称T客
2018/03/19
5910
点击加载更多

相似问题

基于列值的条件联接列

129

基于列值的条件联接

34

基于列值的Server条件联接

32

基于列内容的条件SQL联接

10

基于条件而没有链接/公共列的联接

37
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文