sql >> Database teknologi >  >> RDS >> Sqlserver

Vælg SQL mapping-forespørgsel

Prøv dette:

;WITH Subtotals AS ( SELECT T1.Id, T1.CodeId, SUM(T2.Value) SubTotal FROM Tb1 T1 JOIN Tb1 T2 ON T1.CodeId = T2.CodeId AND T1.Id >= T2.Id GROUP BY T1.Id, T1.CodeId ) SELECT S.ID, S.CodeID, T1.Value, CASE WHEN T2.value >= S.Subtotal THEN T1.value ELSE T1.value - (S.Subtotal - T2.value) END UsedValue, T2.Value T2Value FROM Subtotals S JOIN Tb2 T2 ON S.CodeId = T2.CodeId JOIN Tb1 T1 ON S.Id = T1.Id WHERE T2.Value >= S.SubTotal - T1.Value

Se resultat på SQL FIDDLE



  1. ORA-01005 fejl ved forbindelse til ODP.Net

  2. Tæl antal værdier pr. id

  3. Søg om tal er indeholdt i et udtryk som:1-3,5,10-15,20

  4. SSIS C# 2012 Scriptopgave, der henviser til WinSCPnet.dll mislykkes, når kørsel fra SQL Server Agent med undtagelse er blevet kastet af målet for en påkaldelse