DECLARE @Versions table (id int);
INSERT INTO @Versions
SELECT DISTINCT Version_Id
FROM dbo.values
WHERE CatId = (SELECT id FROM dbo.Category WHERE Name = 'Locations')
SELECT * FROM @Versions --- returns 1,2
Jusqu'à présent, je suis capable d'extraire les données de la version et de les stocker dans des versions de paramètres de valeur table. Mais maintenant, je dois parcourir pour effectuer certaines manipulations commeComment stocker un tableau de valeurs dans SQL Server et le parcourir
WHILE(till @Versions has value) -- Iterate till @Versions exhausts its value ,which will be ideally 1,2 then stop iteration
BEGIN
-- Update Statements for each version
END
Comment spécifier la condition qui fonctionnera seulement jusqu'à @Versions
a une valeur (par incréments - pour la version 1 exécuter une mise à jour, puis faire de même pour pour v2, puis sortie)
Veuillez également suggérer s'il y a une meilleure façon de le faire!
Avez-vous pris un regard sur les curseurs dans le serveur SQL? Ils sont déclarés sur un ensemble et peuvent être utilisés pour récupérer des valeurs dans une ou plusieurs variables. Vous pouvez configurer une boucle while qui s'exécute tant qu'il reste des enregistrements dans le jeu de curseurs. Si vous voulez résoudre sans curseurs, une solution possible dépend de ce que vous essayez de faire. Cela est généralement possible à moins que votre curseur ne soit utilisé pour définir SQL dynamique à exécuter. –