requete pour spliter une colonne - SQL/NoSQL - Programmation
Marsh Posté le 14-10-2008 à 21:10:28
Selon ton SGBD il pourrait éventuellement y avoir des fonction intégrées qui pourraient t'aider.
Mais sinon, pas de table temporaire. Un bête PS te permettra sans problème de faire ça avec n'importe quel SGBD qui sait faire des PS.
PS : Règle numéro 1 = toujours dire sur quel SGBD on a le problème, ça change trop d'un soft à l'autre, surtout pour des trucs comme ça qui ne sont pas régis par la norme SQL.
Marsh Posté le 15-10-2008 à 11:41:36
désolé j'avais oublier de preciser je suis sous oracle (9i et 10g);
un PS ???
Marsh Posté le 15-10-2008 à 11:59:04
Dans ton cas il faudra passer par un truc bien gore d'Oracle, qui s'appelle les tables PIPELINED.
En gros, c'est une fonction qui retourne une table, et que tu appelles avec la syntaxe pourrave :
Code :
|
T'as pas de pot de bosser avec Oracle, parceque c'est clairement naze leur implémentation mais bon.
Un petit exemple qui peut éventuellement te donner quelques pistes :
Code :
|
Marsh Posté le 15-10-2008 à 16:29:18
j'ai essayer ceci
Code :
|
mais ça ne fonctionne pas,
je suis vraiment perdu
Marsh Posté le 15-10-2008 à 16:37:13
euh... c'est moi ou tu as fait un copier/coller d'un truc sans même comprendre ce qu'il fait ?
parceque là ça fait non seulement pas ce que tu tentes de faire, mais en plus tu l'appelles même pas correctement.
ps : et dit pas "ça marche pas". donne l'erreur et/ou le comportement obtenu contre celui attendu
Marsh Posté le 15-10-2008 à 16:56:57
j'avais rajouter une variable str1 pour le id mais ça ne fonctionne pas donc je l'ai enlever
Code :
|
et en faite il me met cette erreur quand je fais le select
Citation : |
en faite je l'ai tester sans mettre le idpers dans la requete, il me met tout colonne mais moi je voulais l'idpers avec et la sa bugue;
sa ne fonctionne meme pas si j'ai plus d'une ligne dans ma table,il faut une seule ligne sinon j'ai ce message
Citation : |
Marsh Posté le 15-10-2008 à 17:02:37
normal.
dans la fonction, fait un premier curseur qui récupère ligne par ligne les données de ta table.
et à l'intérieur, fait le découpage.
et au niveau unitaire, fait les pipe des lignes générées.
et ça devrait marcher.
Marsh Posté le 14-10-2008 à 18:05:56
Bonjour,
j'ai une table dont la structure est la suivante:
etc...Est-il possible d'avoir une requête dont le résultat serait ceci sans passer par une table temporaire ?
sachant que dans le colonne role je peux avoir 0 ou n valeur;
merci