Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да предам SSIS променливи в ODBC SQLCommand израз?

  • С OLE DB

Опитайте този код, той работи за мен с моите собствени таблици с 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

Трябва да щракнете върху Параметри в OLEDB Source Editor, за да конфигурирате това, от което се нуждаете. Използвай '?' за представяне на променлива във вашата заявка.

Ако заявката е твърде сложна, съхранете я в съхранена процедура и я извикайте така:

EXEC shema.storedProcedureName ?

И картографирайте "?" към вашата променлива @user::DateString

  • С ODBC

Изразите са извън потока от данни в свойствата на потока от данни. Изберете свойството на израза и добавете вашата динамична заявка.

И вашето изражение ще бъде

"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"



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Преобразуване на SQL Server DateTime обект в BIGINT (.Net тикчета)

  2. Как да генерирам пореден номер на ред в tsql?

  3. Ограничение за проверка за припокриване на период от време

  4. Как да пропуснете интервалите на припокриване в следната заявка, за да получите точното време за проследяване на ден

  5. Вземете върната стойност от SQL съхранена процедура с помощта на PHP