sql - SQL如何从上面的一行更新一行?
问题描述
我有一张带有产品配置的表格。
Id_conf 与产品 (colspan_title) 按行与标题连接,并且 colspan_no 中的行数即 id_conf 4461-4465 与来自行 4461 的 colspan_title 连接。
如何编写一个将每个 id_conf 与 colspan_title 连接起来的查询?是否可以从上面的单元格更新单元格?
文本数据:
id_conf position proj_id colspan_no colspan_title
4460 1 575 1 prod1
4461 2 575 5 prod2
4462 3 575 0
4463 4 575 0
4464 5 575 0
4465 6 575 0
4466 7 575 2 prod3
4467 8 575 0
4468 9 575 3 prod4
4469 11 575 0
4470 10 575 0
4471 12 575 3 prod5
4472 14 575 0
4473 13 575 0
预期输出所有 id_conf 都有 colspan_title
谢谢 DS
解决方案
您也有position
列,可以按如下方式使用它来更新为 0colspan_title
的所有行colspan_no
:
update your_table t
set t.colspan_title = (select tt.colspan_title from your_table tt
where tt.colspan_no > 0 and t.proj_id = tt.proj_id
and t.position between tt.colspan_no
and tt.colspan_no + tt.position - 1)
where t.colspan_no = 0
推荐阅读
- laravel - 当我使用 laravel 的 DB 外观进行简单连接时,我得到了与结果相同的行
- tensorflow - 如何使用训练有素的 Keras CNN 模型对新的未标记数据进行预测
- javascript - 变量在二维数组的索引中没有指定错误
- c++ - 从 10.3 项目调用 c++ 函数(bcb6 dll/lib)函数
- neural-network - 卷积层以错误的方式卷积(Pytorch)?
- chisel - 这些 `a.bits.user.amba_prot` 信号是什么?为什么它们只是在我的 HarnessBinder 中有条件地未初始化?
- android - is it possible to use usb wifi adapter in android emulator
- java - 有没有一种有效地迭代这些不同索引的好方法?
- angular - 在 Angular 中出现错误,因为 ɵɵFactoryTarget 未定义
- wordpress - 当屏幕尺寸从桌面移动到平板电脑和移动设备时,我遇到了图像消失的问题