sql >> Databasteknik >  >> RDS >> Sqlserver

Behöver hjälp med beräkning med två datamängder med Expression SSRS

Du skulle behöva begränsa din datauppsättning till önskad månad och sedan summera resultaten.

LookupSet används för att hämta data från en annan datauppsättning baserat på kriterier.

En VBA-funktion, SumLookup behövs för att lägga till resultaten från LookUp. Denna VB skulle gå in i KOD-delen av rapporten (detta kan ses under 'Rapportegenskaper').

Function SumLookup(ByVal items As Object()) As Decimal

If items Is Nothing Then Return Nothing

Dim suma As Decimal = New Decimal()
Dim ct as Integer = New Integer()

suma = 0
ct = 0

For Each item As Object In items

  suma += Convert.ToDecimal(item)
  ct += 1

Next

If (ct = 0) Then return 0 else return suma 

End Function 

Du skulle då använda funktionen i ditt uttryck som:

=Code.SumLookup(LookupSet(Fields!MONTH.Value, Fields!MONTH.Value, Fields!Total.Value,"Dataset16"))

Om ditt fält är ett datum, måste du konvertera båda till ett MMyyyy-fält med FORMAT:

FORMAT(Fields!MONTH.Value, "MMyyyy")



  1. Hur Date()-funktionen fungerar i SQLite

  2. Migrerar från Maxscale till ProxySQL Load Balancer

  3. LEAST() Funktion i PostgreSQL

  4. Hur man undkommer enstaka citat i MySQL