sql - 更新语句中的Sql Server查询问题
问题描述
我有一个表作业,其中我有一个列名 MainJob_Id 名称所以我只想将 Container_TypeId 列值更新为 1,2,3...继续...当 MainJob_id 相同时...
否则 MainJob_id 是新的,然后重新开始为 1
执行结果
解决方案
尝试使用可更新的 CTE:
WITH cte AS (
SELECT ContainerTypeId,
ROW_NUMBER() OVER (PARTITION BY MainJob_Id ORDER BY LengthId DESC) rn
FROM yourTable
)
UPDATE cte
SET ContainerTypeId = rn;
但是,您可能不想进行此更新,而只需在查询时选择所需的序列。
推荐阅读
- python - 如何使用 sphinx 发布文档到 confluence
- python - 这些任务是什么意思?
- openid-connect - 等待 _httpContextAccessor.HttpContext.GetTokenAsync("access_token").ConfigureAwait(false); 返回空
- python - RuntimeError: 3 维权重 [128, 1024, 1] 的预期 3 维输入,但得到了大小为 [32, 1024] 的 2 维输入
- azure-devops - Azure DevOps 服务器 - 多个应用程序层
- plugins - 我的 QuickBooks Online 应用程序是否需要在单独的窗口或选项卡中运行?是否有像插件一样运行的应用程序,在与 QB Online 相同的窗口中?
- html - 为什么会出现水平滚动条?
- r - 将多列合并为一个列表列
- python - 如何使用 pandas 从 CSV 打印出特定列
- spring-boot - 使用多个数据源的 LazyInitializationException