这是视图SQL错误BY
SELECT src.OfferAngebotsnummer AS OAngNr1,
SUM(src.Summe2) AS Summe,
CSDokument_1.OfferAngebotsnummer AS OAngNr2,
CSDokument_1.Auftragsvolumen
FROM (
SELECT OfferAngebotsnummer,
ROUND(Angebotssumme, 2) AS Summe2
FROM dbo.CSDokument
WHERE (MANeu = 'AS400') AND
(Art = '3') AND
(DokumentTyp = '3')) AS src
INNER JOIN
dbo.CSDokument AS CSDokument_1 ON
src.OfferAngebotsnummer = CSDokument_1.OfferAngebotsnummer
GROUP BY src.OfferAngebotsnummer,
CSDokument_1.OfferAngebotsnummer,
CSDokument_1.Auftragsvolumen
这是UPDATE
声明
update UpdateAuftragsvolumenAngebot
set Auftragsvolumen = Summe
where Auftragsvolumen <> Summe
,但我得到它没有允许在视图中使用UPDATE
有错误group by
条款。
Cannot update the view or function 'UpdateAuftragsvolumenAngebot'
because it contains aggregates, or a DISTINCT or GROUP BY clause,
or PIVOT or UNPIVOT operator.
我该如何完成UPDATE
?
这是因为创建视图的方式而发生的。查找原始表格和更新值是最安全的方式。或者我们需要修改视图。 –
在上面的视图中,我将SELECT查询与表混合在一起。我想我会先在表格中插入查询。然后使用这两个表创建一个新视图并在此视图上运行更新。当它以这种方式工作时,我会更新我的问题。 – user1673665