sql >> Database >  >> RDS >> Oracle

Forreach-luscontainer voor gegevensstroomtaak

Ik heb het bovenstaande probleem opgelost met SQL Server. Het enige dat u dus hoeft te wijzigen, is de Select-query

  1. Maak eerst een variabele om de datum voor elk jaar op te slaan.

     Name: TimeValue  DataType=Int32
    
  2. Gebruik een ForEach Loop en selecteer Foreach Item-enumerator op het verzameltabblad

  1. Klik op het tabblad Kolommen en maak een nieuwe kolom van het gegevenstype int

  2. In de variabele mapping kaart de variabele die hierboven is gemaakt.

  1. Gebruik binnen de gegevensstroom een ​​oledb-bestemming en selecteer in de gegevenstoegangsmodus de opdracht sql. De query in de where-clausule moet worden gewijzigd en probeer de kolommen te selecteren in plaats van *.

  1. Klik op het tabblad parameters om de parameter die voor de foreach-lus is gemaakt, toe te wijzen

In het geval dat de waarden van date niet eerder bekend zijn, kunt u de opdracht sql-taak uitvoeren voor de foreach-lus gebruiken en alleen de dateTime-kolomwaarden uit de tabel selecteren en deze in een variabele opslaan en in de foreach-lus Forreach gebruiken van de variabele-enumerator in de verzameling tab en selecteer de variabele gemaakt in de bovenstaande SQL-taak uitvoeren.

Ik hoop dat dit je helpt.




  1. Controleer of een tabel wordt verwezen door een externe sleutel in SQL Server met OBJECTPROPERTY()

  2. Ant-taak om te controleren of een database (verbinding) bestaat?

  3. Op één na hoogste salaris

  4. Prestatiestraf voor geneste mysql-query's