93 votes

Sélectionner des valeurs codées en dur sans tableau

Je dois exécuter une sélection sans me connecter à une table. J'ai juste un ensemble prédéfini de valeurs codées en dur sur lequel je dois boucler :

foo
bar
fooBar

Et je veux faire une boucle à travers ces valeurs. Je peux le faire :

select 'foo', 'bar', 'fooBar';

Mais ceci le renvoie comme une seule ligne :

 ?column? | ?column? | ?column? 
----------+----------+----------
 foo      | bar      | fooBar
(1 row)

J'utilise Postgresql.

138voto

Clodoaldo Neto Points 26723
select a
from (
    values ('foo'), ('bar'), ('fooBar')
) s(a);

http://www.postgresql.org/docs/current/static/queries-values.html

39voto

Vivek S. Points 10835

Utilisation de unnest()

développer un tableau en un ensemble de lignes

select unnest(array['foo', 'bar', 'fooBar']);

Démonstration

8voto

Solanki Vaibhav Points 175

Postgres SQL :

Pour une sortie de données statiques sous forme de représentation d'une seule ligne et de plusieurs colonnes, utilisez la requête suivante :

select a,b,c from (values('foo','bar','fooBar')) s(a,b,c);

résultat de cette requête SQL :

enter image description here

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X