Il est plus élégant si vous matérialisez une table de numéros auxiliaire:
SELECT num FROM numbers WHERE num IN (2,6,1,8);
Et ceci est également utile lorsqu'il est combiné avec une autre table.
Par exemple, j'ai eu un cas où je devais remplir de grandes tables de configuration avec les changements des résultats de morceaux:
feuille Big SP ou Excel ou d'un rapport identifie les centres de coûts manquants dans la configuration donne un grand ensemble de résultats qui doivent être insérés avec des données variables dans certains groupes.
Coller des résultats partiels dans une virgule individuels séparés listes:
INSERT INTO {stuff}
SELECT {stuff}, 130 as line_item
FROM numbers
WHERE numbers.num IN ({pasted a section of results})
INSERT INTO {stuff}
SELECT {stuff}, 135 as line_item
FROM numbers
WHERE numbers.num IN ({pasted another section of results})
Y at-il un problème particulier que vous essayez de résoudre en faisant cela? – mmorrisson
Ce sont vraiment des exécutions uniques pl/sql. Générer des boucles sur certains nombres et autres. –