2010-01-28 6 views
0

J'ai une table qui stocke les enregistrements divisés en champs, c'est-à-dire. si j'ai ce disque comme suitRetour de l'ensemble des enregistrements

{ 
    "name": "John Doe" 
    "gender": "male" 
} 

Ensuite, cet enregistrement est stocké dans le tableau 2 lignes, comme suit

[ 
    { "id": "1", "col": "name", "value": "John Doe" }, 
    { "id": "1", "col": "gender", "value": "male" } 
] 

Si je veux écrire une fonction postgresql, qui renvoie le dossier de retour à le formulaire d'origine (tous les attributs dans une forme de ligne, au lieu de l'attribut un formulaire de ligne), comment puis-je le faire?

(la conception de table a été fait comme une expérience à des fins d'entreposage de données)

Répondre

1

Si je vous comprends bien, vous pourriez écrire quelque chose comme ça

select a.value, b.value 
from table1 a 
inner join table1 b on a.id = b.id and a.orderNum < b.orderNum 

Pour faire simple vous pouvez introduire NumCommande sur le terrain

ps Je n'ai pas installé Postgress, donc vous pourriez corriger ma requête.

Questions connexes