I'd like to increment the values in the column nc by 1 each time the value in 10minDiff changes. In the Table below, the values in nc should read 2 from row 1246 onwards and 3 the next time 10minDiff changes from 10.
SELECT [Einspeiser/Netzbetreiber],
[Stufe%],
[Start],
[10minDiff],
[nc] = IIF([10minDiff] = 10, 1, 0)
FROM
(
SELECT [Einspeiser/Netzbetreiber],
[Stufe%],
[Start],
[10minDiff] = DATEDIFF(MINUTE, LAG([Start]) OVER (ORDER BY [Start]),
[Start])
FROM
(
SELECT 'Merkur AC156' AS [Einspeiser/Netzbetreiber],
[Stufe%] = ROUND([Active power demand setpoint] * 100 / 198, 2),
[TimeStampLocalSystem] AS Start
FROM
(
SELECT [Systemnumber],
[TimeStampLocalSystem],
[TimeStampUTCSystem],
[Minute10Average],
[Name]
FROM [SCADACustomerHistorical].[dbo].[CV_English_ChannelData]
WHERE [TimeStampLocalSystem]
BETWEEN
'2022-02-01 00:00:00.000' AND '2022-03-31 23:50:00.000'
AND [Systemnumber] IN ('1082704200')
AND [Name]
IN
('Active power demand setpoint',
'Actual active power',
'DMI power demand in MW',
'Active power reference setpoint')
)temp_table
PIVOT
(
SUM(
[Minute10Average])
FOR
[Name] IN
([Actual active power],
[Active power demand setpoint],
[DMI power demand in MW],
[Active power reference setpoint]
)
) pivot_table
)tbl2
WHERE [Stufe%] <> 100
)
tbl3
ORDER BY [Start];

TRIGGER?ncis derived by an expression in your query, so it being affected by aTRIGGERis impossible.