SQL Server初学者在这里。我在SELECT / UPDATE语句上遇到了一些麻烦。我有一个带有订单号列和行号列的表。下面的select语句返回我想要的值。我想获取结果并将该编号插入订单号匹配的同一张表的一列中。我在想这个吗?还是在考虑复杂性? :)
SELECT
ORDNUM, COUNT(LINNUM) AS 'CountLines'
FROM [TableName]
WHERE STS = '3' AND DUEQTY < ONHAND AND STYPE = 'CU'
GROUP BY ORDNUM
UPDATE [TableName]
SET LNCNT = 'CountLines'
WHERE ORDNUM = ORDNUM
先感谢您。
本
更新:我在下面使用了Andomars解决方案,并且效果很好。谢谢大家的帮助。
最佳答案
使用SQL Server语法:
update tn
set LNCNT = SubQuery.CountLines
from TableName as tn
join (
select ordnum
, count(linnum) as CountLines
from TableName
where sts = '3'
and DUEQTY < ONHAND
and STYPE = 'CU'
group by
ordnum
) as SubQuery
on SubQuery.ordnum = tn.ordnum