合并 - 条件“匹配时更新”

2023-12-28

下图中的亮点显示了我想要实现的逻辑。我意识到语法不正确。

有没有办法有条件地更新 MERGE 语句中的记录,仅当目标表中某一列的值为 NULL,并且源表中相应的值不为 null 时?

你建议如何重写这个?

MERGE dbo.input_311 AS [t]
USING dbo.input_311_staging AS [s]
ON ([t].[unique key] = [s].[unique key])
WHEN NOT MATCHED BY TARGET
    THEN INSERT(t.[Created Date]) VALUES(s.[Created Date])
WHEN MATCHED
    THEN UPDATE SET(t.[Created Date] = s.[Created Date]
                WHERE s.[Created Date] IS NOT NULL
                AND t.[Created Date] IS NULL)
OUTPUT deleted.*, $action, inserted.*;
GO

你也许可以使用When Matched And (s.[Created Date] Is Not Null And t.[Created Date] Is Null) Then Update ....

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

合并 - 条件“匹配时更新” 的相关文章

  • 如何在 sqlalchemy 中创建基于文字的查询?

    我创建了一个函数来创建表达式 def test operator1 operation operator2 return literal column operator1 op operation operator2 现在当我用 test
  • 对于数据库来说,选择正确的数据类型会影响性能吗?

    如果是这样 为什么 我的意思是 tinyint 的搜索速度比 int 快吗 如果是这样 性能上的实际差异是什么 是的 根据数据类型 它确实有所不同 int vs tinyint不会在速度上产生明显的差异 但会在数据大小上产生差异 假设tin
  • 使用 Spark DataFrame 获取组后所有组的 TopN

    我有一个 Spark SQL DataFrame user1 item1 rating1 user1 item2 rating2 user1 item3 rating3 user2 item1 rating4 如何按用户分组然后返回TopN
  • 如何在SSRS中的表上创建热图?

    如何在 SSRS 中创建这样的内容 颜色将根据行中的值 承销商 从红色变为绿色 所有这些都在一个组中 您可以通过右键单击各个单元格并根据表达式设置填充颜色来完成此操作 In the Image below I ve mistakingly
  • SQL参数化查询不显示结果

    我的 DataAcess 类中有以下函数 但它没有显示任何结果 我的代码如下 public List
  • 将 SQL 数据中的一行映射到 Java 对象

    我有一个 Java 类 其实例字段 以及匹配的 setter 方法 与 SQL 数据库表的列名相匹配 我想优雅地从表中获取一行 到 ResultSet 中 并将其映射到此类的实例 例如 我有一个 Student 类 其中包含实例字段 FNA
  • 如何在SSRS 2012中显示基于总金额的前10名

    我只需要显示前 10 名Class基于Total SUM Premium 柱子 我转到类代码属性组 gt 过滤器并按 SUM Net Written Premium 设置前 10 名 但它不起作用 我只需要显示前 10 名 而且总金额也应该
  • 如何让 LinqToSql 将“索引提示”传递给 sql server?

    由于我们不能相信我们的客户会更新 sql server 中的索引统计信息等 因此我们过去不得不使用索引提示 http www sql server performance com tips hints general p1 aspx 由于我
  • 如何在 SQL Server 中使用 nvarchar 变量为 unicode 用户添加前缀“N”?

    如何在 SQL Server 中使用 nvarchar 变量为 unicode 用户添加前缀 N 例如 给定这个变量 declare Query1 nvarchar max 我可以这样分配它 set Query1 N 但是如果我想使用怎么办
  • SQL Server,插入 Excel“链接服务器”时出现“无效列名”错误

    我有一个简单的 Excel 电子表格文档 运行 Office 2013 我使用 Microsoft Office 15 0 Access 数据库引擎 OLE DB 提供程序 将其用作数据库 我可以使用 MS SQL Server Manag
  • 分层查询

    我希望我能够解释困扰我的问题 我有以下分层数据集 这只是 34K 记录的子集 PARENT ID CHILD ID EXAM TUDA12802 TUDA12982 N TUDA12982 TUDA12984 J TUDA12984 TUD
  • SQL 删除表并重新创建并保留数据

    在我们最初的设计中 我们搞砸了表中的外键约束 现在表已充满数据 我们无法在不删除表中所有记录的情况下更改它 我能想到的唯一解决方案是创建一个备份表并将所有记录放在那里 然后删除所有记录 更改表并开始将它们添加回来 还有其他 更好 的想法吗
  • 使用 JSON 参数的 Postgres 批量 INSERT 函数

    这是一个plpgsqlpostgres 的函数9 6 它试图INSERT一行 如果插入没有失败 由于违反键约束 那么它会运行更多命令 CREATE FUNCTION foo int text text RETURNS void AS BEG
  • gitlab 请求将分支 A 合并到开发中(落后 3 次提交)我应该担心吗?

    在 gitlab 中创建合并请求时 我经常收到一条消息 请求将分支 A 合并到开发中 x 提交落后 gitlab想告诉我什么 我应该担心还是需要修复某些东西 什么 一段时间后合并请求在项目中打开时 由于其他人合并了自己的更改 您尝试合并到的
  • 存储过程和权限 - EXECUTE 就足够了吗?

    我有一个 SQL Server 2008 数据库 其中对基础表的所有访问都是通过存储过程完成的 一些存储过程只是从表中选择记录 而其他存储过程则进行 UPDATE INSERT 和 DELETE 如果存储过程更新表 执行存储过程的用户是否也
  • 列中差异的数量

    我想检索一列每行中有多少个字母的差异 例如 如果您有一个值 test 而另一行有一个值 testing 则 test 和 testing 之间的差异为 4 个字母 该列的数据值为 4 I have reflected about it an
  • 如何在存储过程中实现 sql 搜索功能 (Sql Server 2008)

    我需要编写一个存储过程 该过程将使用 sql server 2008 根据可选参数搜索表 将会有两种模式 基本搜索模式 我们只传递一些文本 高级搜索模式 使用可选参数而不使用 SearchText 为了进行测试 我使用 AdventureW
  • 了解 SSMS 2008 中关系的更新和删除规则

    当我们定义外键约束时 我对 SQL Server 2008 Management Studio 中的更新和删除规则的含义感到困惑 我也没有找到相关的帮助文档 例如F1帮助 这是屏幕快照 如果有人能描述它们的含义并推荐一些相关文档来阅读 我将
  • 对多个数据库执行 SQL 查询

    我知道我的帖子与该论坛中的其他帖子的标题非常相似 但我真的找不到我需要的答案 这是我的问题 我的 Windows Server 上运行着 SQL Server 在我的 SQL Server 中 我有大约 30 个数据库 它们都具有相同的表和
  • 探查器模板可以迁移到较新版本的 SQL Profiler 吗?

    是否可以将 Profiler 模板迁移到较新版本的 SQL Server 就我而言 我想将 SQL 2008 模板带到 2012 年 我尝试过 1 直接文件复制和 2 导出 导入 在这两种情况下 旧模板都会运行 但无法修改 修改后会出现以下

随机推荐

  • 将 UWP 项目的目标版本从 1803 更改为 1809 会禁用 NavigationView 的亚克力纹理 - 为什么?

    我有一个 UWP 项目 我开始使用目标版本 1803 构建 当我升级解决方案以使用目标版本 1809 时 我的 NavigationView 的行为发生了变化 亚克力效果消失了 作为一个例子 这就是它之前的样子 这就是现在的样子 为什么会出
  • JUnit 报告——测试方法描述

    我想看看是否有办法通过 javadoc 在我的 junit 报告中包含 描述性文本 JUnit 4 似乎不像 TestNG 那样支持 Test 注释的 描述 属性 到目前为止 根据我的研究 只有一种名为 javadoc junit 的工具
  • 绿色调试器指针在 VS Code 中意味着什么?

    与调试会话期间的正常黄色位置指针相比 绿色箭头意味着什么 我认为这是 Javascript 的时候hoisting变量 我是从 Udemy 课程中学到的 您可以预览视频 https www udemy com course understa
  • 如何从Android中的Google Drive获取所有文件夹和文件的列表

    我已经开始开发一个应用程序 其中我必须列出谷歌驱动器中的所有文件夹和文件 我已经按照堆栈溢出中的建议浏览了所有文档和下面的演示链接answer https stackoverflow com questions 32760028 get a
  • 使用 $apply 在 OData v4 规范中聚合筛选数据集的语法

    假设我正在查询一个名为Sales具有以下架构 id int price decimal active bit 使用 apply查询选项和aggregate的转变OData v4 规范 http docs oasis open org oda
  • 由于 xml 签名错误

    我有一个 xml 文档 当我使用 java libs 打印文档时 我得到了正确的 xml 输出 然后我使用 xmlsignatures 签署 xml 文档 签名后 我尝试再次打印该文档 但这次文档的打印方式是所有元素混乱 所以我想知道xml
  • 在Android上使用Gstreamer或ffmpeg创建rtsp客户端

    我想在android上流rtsp流 我终于来了 结论是我不能使用 android API 的 MediaPlayer Videoview 等 因为 延迟对我来说是个大问题 我需要 Gstreamer 或 ffmpeg 客户端是否能够提供 我
  • 如何在基于浏览器的url中将自定义对象发送到WCF REST服务[重复]

    这个问题在这里已经有答案了 我有一个可序列化的员工实体类 public class Emp public int Id get set public string Name get set 我想从浏览器将此类的对象发送到 WCF REST
  • Jenkins pipeline、bitbucket hook 和 maven 发布插件无限循环

    我一直找不到这方面的信息 所以希望大家能帮我解决这个问题 我有一个托管在 bitbucket 中的 Maven 项目 它有一个 BitBucket WebHook 指向 someurl bitbucket hook 这个钩子会触发我的项目的
  • 重用部分查询进行计数的 Java 编码最佳实践

    The 在 hibernate 中实现结果分页获取总行数 https stackoverflow com questions 1600215 implementing result paging in hibernate getting t
  • 如何将 @Query sql 存储在 CrudRepository 的外部文件中?

    我在用着spring with CrudRepositorys 用于数据库连接 现在我需要一个相当长 几行 的 SQL 查询 我更愿意将其维护在类路径中的文件中 而不是直接在代码中维护 但我怎样才能实现这个目标呢 我的仓库如下所示 Quer
  • 日期范围的 Facebook 广告洞察 GRAPH API 边缘

    我正在尝试使用 Facebook Graph API 获取给定日期范围内的 Facebook 广告统计信息 这似乎不起作用 lt gt 知道我应该怎么做吗 答案在上面的评论中 并将其添加到此处 以便清楚 问题出在 time range 参数
  • Google Chrome 是否有 API 来访问其下载页面?

    我可以通过扩展程序 附加组件 进入 Google Chrome 的下载页面吗 我想编写一个扩展 它需要用户当前正在下载的所有文件的文件名 或路径 这可能吗 我应该查看哪些 API 搜索这个非常棘手 我不知道从哪里开始 不 我找不到可以让您查
  • 如何在vagranted虚拟机上访问postgresql?

    我通过 Vagrant 虚拟机和 postgresql 进行制作 并希望将其用作我的 Rails 应用程序数据库 我使用类似的 Vagrantfile Vagrant configure 2 do config config vm netw
  • 遇到合并冲突标记

    SourceTree 合并冲突 我创建了一个本地 Test 分支进入源树用于测试一些新功能 一切似乎都工作正常 然后我合并了 master 分支到我本地 Test 分支 不幸的是 推了它 但从那以后通过跑步 服务 我收到以下错误 52 lt
  • VBA 复制和转置数据范围

    我正在工作中设置一些电子表格以简化我的工作 我还是 VBA 新手 我正在尝试从 Sheet1 中剪切列 E6 E14 中的一系列数据 并在将数据粘贴到 Sheet2 列 A 中的下一个可用行中之前转置数据 这是我迄今为止通过反复试验编写的代
  • 如何从 Web 服务中获取参数值

    我有一个 Web 服务 一个 ASP NET asmx 页面 出于调试目的 我需要记录对 Web 服务的所有调用 包括传递到每个调用的所有参数的值 因此基本上每个 WebMethod 应该做的第一件事就是记录它的状态以及传递给它的所有参数值
  • 是否有移动和覆盖文件的操作?

    我正在寻找移动和覆盖文件的操作 我知道有一个新方法Java7 http docs oracle com javase 7 docs api java nio file Files html move 28java nio file Path
  • 您是否需要一个框架来为 Web 编写 Ruby 或 Python 代码?

    每次我看到在 Web 开发背景下讨论 Ruby 或 Python 时 总是会提到一个框架 Rails for Ruby Django for Python 这些框架有必要吗 如果没有 是否有原因导致这些语言经常在框架内使用 而 Perl 和
  • 合并 - 条件“匹配时更新”

    下图中的亮点显示了我想要实现的逻辑 我意识到语法不正确 有没有办法有条件地更新 MERGE 语句中的记录 仅当目标表中某一列的值为 NULL 并且源表中相应的值不为 null 时 你建议如何重写这个 MERGE dbo input 311