仅更新具有共享/相似值的行 [英] Update Only Rows with Shared/Similar Values

查看:31
本文介绍了仅更新具有共享/相似值的行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

好的 - 我有一个简单的表格 - 下面 - 我想要做的是只识别那些具有共享值的行 - 所以任何具有共享apc"值的东西 - DO x else Do Y

OK - I have a simple table - below - what I am trying to do is to identify only those rows that have a shared value - so anything that has a shared "apc" value - DO x else Do Y

CREATE TABLE #test (hcpcs varchar(10), apc varchar(100), rate money) 

INSERT INTO #test (hcpcs, apc)
SELECT '97110', '8009'
UNION ALL
SELECT '71020', '8009'
UNION ALL
SELECT '85025', '8006'

因此 - 从上面 - 所有那些共享8009"的行 - 我将这些行用于更新 - 它们将共享相同的速率".带有8006"的行不会成为该更新的一部分

So - from the above - all those rows that share "8009" - I will gram those rows for an update - they will share the same "rate". Row with "8006" will not be a part of that update

推荐答案

您想要:

WHERE EXISTS (SELECT *
     FROM #test t2
     WHERE t2.apc = #test.apc
     AND t2.hcpcs != #test.hcpcs)

确保将 apc 编入索引,以便有效地完成此操作.

Make sure apc is indexed so that this can be done effectively.

这篇关于仅更新具有共享/相似值的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆