sql - SQL Server:如果在所有字段中存在与该行具有相同值的其他行,如何更新一行?
问题描述
如果 SQL Server 中的表如下所示,如何更新第一行?
Name | Value
-------+---------
Test | VALUE1
Test | VALUE1
Test | VALUE1
Test | VALUE1
Test | VALUE1
解决方案
采用row_number()
with cte as
( select *,row_number() over(partition by Test order by VALUE1) rn from tab
) update cte set name=val ,value=val where rn=1
推荐阅读
- node.js - 如何使用 multer 上传文件并在上传前对其进行优化 - NodeJs
- php - 如何根据特定表 tr 表 id 或 codeigniter 中的复选框选择下拉选项值
- python-3.x - 尝试在 Python 中使用 Request 函数和通过 scrapy 在 Python 中进行 Web 抓取时获取 444 响应代码
- amazon-web-services - 让 AWS SQS 通过 AWS SDK 运行一个 php 脚本
- security - 使用服务网格时应该如何设计 VPC?
- c - 使用 ESP-IDF (ESP32) 和 ILI9341 显示适配器从 SPI 总线读取数据。没有得到有意义的数据
- c# - 实体框架委托实体从外部源添加/加载
- kubernetes - 我们可以在 LimitRange 中添加临时存储吗?
- database - 在数据库中存储任务信息
- arm64 - GNU 汇编器 (Arm64)。宏参数引用中的括号