首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于现有值的条件连接

基于现有值的条件连接
EN

Stack Overflow用户
提问于 2015-07-14 03:16:15
回答 1查看 24关注 0票数 0

想要一些关于以下场景的输入(使用MSSQL08)。假设我有一个“User”表,其中包含“User”、“CurrentCode”(2位)和一些“JobCode”(3位)的列表。我想要更新'CurrentCode‘字段为一个更准确的3位代码,所以我已经创建了这些代码的单列表,称为'NewCode’。

“NewCode”字段与“JobCode”字段直接相关,因此对具有有效“JobCode”的用户更新“CurrentCode”很容易。然而,对于那些没有'JobCode‘(是'NA')的人来说,我只是在将他们当前的2位代码与'NewCode’表中列表的前2位进行匹配。

我已经能够输出如下内容,使用两个联接到“NewCode”表的实例(如果存在值,则“确认”链接到'JobCode‘,如果没有,则使用链接到'CurrentCode’的“匹配”):

代码语言:javascript
复制
+------+-------------+---------+---------------------+-------------------+
| User | CurrentCode | JobCode | NewCode - Confirmed | NewCode - Matched |
+------+-------------+---------+---------------------+-------------------+
| A    |          11 |     111 |                 111 |                   |
| B    |          12 |      NA |                     |               120 |
| C    |          23 |     232 |                 232 |                   |
| D    |          42 |     423 |                 423 |                   |
| E    |          11 |     112 |                 112 |                   |
| F    |          21 |      NA |                     |               210 |
| G    |          33 |      NA |                     |               330 |
+------+-------------+---------+---------------------+-------------------+

我很有兴趣了解如何将2连接组合到'NewCode‘表中,这样它将返回一个列中的代码,这取决于'JobCode’字段中是否有匹配。例:

代码语言:javascript
复制
+------+-------------+---------+---------+
| User | CurrentCode | JobCode | NewCode |
+------+-------------+---------+---------+
| A    |          11 |     111 |     111 |
| B    |          12 |      NA |     120 |
| C    |          23 |     232 |     232 |
| D    |          42 |     423 |     423 |
| E    |          11 |     112 |     112 |
| F    |          21 |      NA |     210 |
| G    |          33 |      NA |     330 |
+------+-------------+---------+---------+

我将如何将这个条件连接创建到一个表实例,或者它是否可能?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-14 03:25:58

条件联接是可能的,而在您的情况下,您可以使用ISNULL()在您的选择中简单地使用它。

代码语言:javascript
复制
ISNULL([NewCode - Confirmed], [NewCode - Matched]) AS NewCode
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31397018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档