【问题标题】:How to update a column in sql from another column and row in same table dynamicaly如何从同一表中的另一列和行动态更新sql中的列
【发布时间】:2015-05-05 06:46:24
【问题描述】:
update pos 
set a = concat_ws((select b from (select * from pos where a is not null limit 1) as ta), '', b)
where a is null

我想将a 列中的every row 更新为blast value 及其值b

【问题讨论】:

  • 那很混乱,提供一些示例数据和更新后的预期结果。
  • 并选择mysql或sql-server

标签: mysql sql-server select sql-update


【解决方案1】:

如果我理解正确,并且您使用的是 SQL Server,那么您正在寻找 LAG() 函数来获取 B 的先前值。弄清楚如何使用它。

https://msdn.microsoft.com/en-us/library/hh231256.aspx

访问同一结果集中前一行的数据,不带 在 SQL Server 2012 中使用自联接。LAG 提供对行的访问 当前行之前的给定物理偏移量。用这个 SELECT 语句中的分析函数来比较 当前行的值在前一行中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-18
    • 2019-07-25
    • 2023-01-13
    • 2022-01-23
    • 1970-01-01
    • 2021-08-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多