- Med OLE DB
Prøv denne kode, den virker for mig med mine egne tabeller med SQL Server :
SELECT userid,sum(goldbalance) AS SUMGOLD
FROM deltadna.events_live
WHERE eventTimestamp >= DATEADD(DAY, -100,CONVERT(DATE,?))
GROUP BY userid
ORDER BY SUMGOLD desc
Du skal klikke på Parameters i OLEDB Source Editor for at konfigurere det, du har brug for. Brug '?' for at repræsentere en variabel i din forespørgsel.
Hvis du spørger, om det er for kompliceret, gemte du det i en lagret procedure og kalder det sådan her:
EXEC shema.storedProcedureName ?
Og kortlæg '?' til din variabel @user::DateString
- Med ODBC
Udtrykkene er uden for dataflowet i Data Flow Properties. Vælg udtryksegenskaben, og tilføj din dynamiske forespørgsel.
Og dit udtryk vil være
"SELECT userid,sum(goldbalance) AS SumGold
FROM deltadna.events_live
where eventTimestamp>=DATE "[email protected][User::datestring]+" +INTERVAL '-100 day'
group by userid
order by SumGold desc"