小编use*_*281的帖子

使用MAX()进行TSQL更新

我正在尝试将列更新为最大值,但仅在按适当的标识符分组时.

SQL小提琴我试图用试用和失败的代码:(.

SQL Fiddle我希望它在更新后看起来像什么.

您可以借给我的任何帮助将不胜感激.据我所知,max()只占用列的最大数量,那么如何在不破坏它的情况下对更新语句进行排序?

sql t-sql sql-server-2008

3
推荐指数
1
解决办法
5421
查看次数

使用SUM和Group BY进行T-SQL更新

我想用这个查询中的值更新,但它说它返回多个值.

UPDATE PO_HEADER
  SET TOTAL = (SELECT SUM(LINE_TOTAL) AS "NEW_LINE_TOTAL" 
  FROM PO_LINE pl, PO_HEADER ph 
  where ph.IC_PO_HEADER = pl.IC_PO_HEADER 
  and ph.RELEASE_NUMBER = pl.RELEASE_NUMBER 
  group by pl.IC_PO_HEADER,pl.FOREIGN_KEY,ph.RELEASE_NUMBER,
  ph.REVISION_NUMBER,ph.PO_NUMBER)
from PO_HEADER ph, PO_LINE pl
where ph.IC_PO_HEADER = pl.IC_PO_HEADER;
Run Code Online (Sandbox Code Playgroud)

消息512,级别16,状态1,行1
子查询返回的值超过1.当子查询跟随=,!=,<,<=,>,> =或子查询用作表达式时,不允许这样做.

它是如何返回多个列的?

sql t-sql sql-server-2008

3
推荐指数
2
解决办法
2万
查看次数

标签 统计

sql ×2

sql-server-2008 ×2

t-sql ×2