j'aimerai savoir s'il est possible de concatener des champs de plusieurs
record.
Je m'explique.
Supposons que j'ai un table contenant des albums
j'aimerai obtenir une chaine contenant la liste des albums d'un auteur
dans un seul champs... alors qu'évidement chaque album est dans un
record différent.
j'aimerai savoir s'il est possible de concatener des champs de plusieurs record. Je m'explique. Supposons que j'ai un table contenant des albums
j'aimerai obtenir une chaine contenant la liste des albums d'un auteur dans un seul champs... alors qu'évidement chaque album est dans un record différent.
Est il possible de faire ca en SQL?
Bonjour,
Oui, c'est faisable, en regroupant sur les attributs souhaités, et en aggrégeant les albums.
J'imagine que les albums sont de type text ou varchar ; le plus simple est alors de lire l'excellent article suivant : <http://www.bortzmeyer.org/agregats-postgresql.html>
-- Sébastien
Le 31/01/2010 22:01, WebShaker a écrit :
Salut.
J'utilise postgreSQL 8.3
j'aimerai savoir s'il est possible de concatener des champs de plusieurs
record.
Je m'explique.
Supposons que j'ai un table contenant des albums
j'aimerai obtenir une chaine contenant la liste des albums d'un auteur
dans un seul champs... alors qu'évidement chaque album est dans un
record différent.
Est il possible de faire ca en SQL?
Bonjour,
Oui, c'est faisable, en regroupant sur les attributs souhaités, et en
aggrégeant les albums.
J'imagine que les albums sont de type text ou varchar ; le plus simple
est alors de lire l'excellent article suivant :
<http://www.bortzmeyer.org/agregats-postgresql.html>
j'aimerai savoir s'il est possible de concatener des champs de plusieurs record. Je m'explique. Supposons que j'ai un table contenant des albums
j'aimerai obtenir une chaine contenant la liste des albums d'un auteur dans un seul champs... alors qu'évidement chaque album est dans un record différent.
Est il possible de faire ca en SQL?
Bonjour,
Oui, c'est faisable, en regroupant sur les attributs souhaités, et en aggrégeant les albums.
J'imagine que les albums sont de type text ou varchar ; le plus simple est alors de lire l'excellent article suivant : <http://www.bortzmeyer.org/agregats-postgresql.html>
-- Sébastien
WebShaker
Ah super.
J'y croyais pas du tout, j'avais posé la question au cas ou. Ben c'est pile poil.
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme. Merci beaucoup !!!
Etienne
"Sebastien Lardiere" a écrit dans le message de news: 4b6687b7$0$17130$
Le 31/01/2010 22:01, WebShaker a écrit :
Salut.
J'utilise postgreSQL 8.3
j'aimerai savoir s'il est possible de concatener des champs de plusieurs record. Je m'explique. Supposons que j'ai un table contenant des albums
j'aimerai obtenir une chaine contenant la liste des albums d'un auteur dans un seul champs... alors qu'évidement chaque album est dans un record différent.
Est il possible de faire ca en SQL?
Bonjour,
Oui, c'est faisable, en regroupant sur les attributs souhaités, et en aggrégeant les albums.
J'imagine que les albums sont de type text ou varchar ; le plus simple est alors de lire l'excellent article suivant : <http://www.bortzmeyer.org/agregats-postgresql.html>
-- Sébastien
Ah super.
J'y croyais pas du tout, j'avais posé la question au cas ou.
Ben c'est pile poil.
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca
va le faire quand meme.
Merci beaucoup !!!
Etienne
"Sebastien Lardiere" <sebastien.lardiere@free.fr> a écrit dans le message de
news: 4b6687b7$0$17130$426a74cc@news.free.fr...
Le 31/01/2010 22:01, WebShaker a écrit :
Salut.
J'utilise postgreSQL 8.3
j'aimerai savoir s'il est possible de concatener des champs de plusieurs
record.
Je m'explique.
Supposons que j'ai un table contenant des albums
j'aimerai obtenir une chaine contenant la liste des albums d'un auteur
dans un seul champs... alors qu'évidement chaque album est dans un
record différent.
Est il possible de faire ca en SQL?
Bonjour,
Oui, c'est faisable, en regroupant sur les attributs souhaités, et en
aggrégeant les albums.
J'imagine que les albums sont de type text ou varchar ; le plus simple
est alors de lire l'excellent article suivant :
<http://www.bortzmeyer.org/agregats-postgresql.html>
J'y croyais pas du tout, j'avais posé la question au cas ou. Ben c'est pile poil.
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme. Merci beaucoup !!!
Etienne
"Sebastien Lardiere" a écrit dans le message de news: 4b6687b7$0$17130$
Le 31/01/2010 22:01, WebShaker a écrit :
Salut.
J'utilise postgreSQL 8.3
j'aimerai savoir s'il est possible de concatener des champs de plusieurs record. Je m'explique. Supposons que j'ai un table contenant des albums
j'aimerai obtenir une chaine contenant la liste des albums d'un auteur dans un seul champs... alors qu'évidement chaque album est dans un record différent.
Est il possible de faire ca en SQL?
Bonjour,
Oui, c'est faisable, en regroupant sur les attributs souhaités, et en aggrégeant les albums.
J'imagine que les albums sont de type text ou varchar ; le plus simple est alors de lire l'excellent article suivant : <http://www.bortzmeyer.org/agregats-postgresql.html>
-- Sébastien
Dominique Ottello
"WebShaker" écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
"WebShaker" <etienne@trash.com> écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca
va le faire quand meme.
j'aimerai en fournissant idtree = 6 j'aimerai obtenir
- tous les id fils (lui inclue) : 6, 8, 9 - tous les id peres (lui inclue) : 6, 2, 1 - la liste des label fils (lui inclue) : data005, data009, data010 - la liste des label peres (lui inclue) : data005, data001, data000
bref. Existe t il des fonctions capable de parcourir une structure arborescente en SQL sous postgreSQL.
Merci. Etienne
salut.
bon ben dans la foulée.
vu qu'il semble possible de faire des trucs plutot balaise avec postgreSQL.
j'ai une table
CREATE TABLE "tree" (
"idtree" serial NOT NULL,
"idparent" integer,
"label" text,
PRIMARY key (idtree),
FOREIGN key (idparent) REFERENCES tree (idtree)
)
Est il possible d'obtenir une liste de toute l'arborescence montant ou
descendante.
j'aimerai en fournissant
idtree = 6
j'aimerai obtenir
- tous les id fils (lui inclue) : 6, 8, 9
- tous les id peres (lui inclue) : 6, 2, 1
- la liste des label fils (lui inclue) : data005, data009, data010
- la liste des label peres (lui inclue) : data005, data001, data000
bref. Existe t il des fonctions capable de parcourir une structure
arborescente en SQL sous postgreSQL.
j'aimerai en fournissant idtree = 6 j'aimerai obtenir
- tous les id fils (lui inclue) : 6, 8, 9 - tous les id peres (lui inclue) : 6, 2, 1 - la liste des label fils (lui inclue) : data005, data009, data010 - la liste des label peres (lui inclue) : data005, data001, data000
bref. Existe t il des fonctions capable de parcourir une structure arborescente en SQL sous postgreSQL.
Merci. Etienne
WebShaker
WebShaker a écrit :
salut.
bon ben dans la foulée. vu qu'il semble possible de faire des trucs plutot balaise avec postgreSQL.
j'ai une table
CREATE TABLE "tree" ( "idtree" serial NOT NULL, "idparent" integer, "label" text, PRIMARY key (idtree), FOREIGN key (idparent) REFERENCES tree (idtree) )
Est il possible d'obtenir une liste de toute l'arborescence montant ou descendante.
j'aimerai en fournissant idtree = 6 j'aimerai obtenir
- tous les id fils (lui inclue) : 6, 8, 9 - tous les id peres (lui inclue) : 6, 2, 1 - la liste des label fils (lui inclue) : data005, data009, data010 - la liste des label peres (lui inclue) : data005, data001, data000
bref. Existe t il des fonctions capable de parcourir une structure arborescente en SQL sous postgreSQL.
Merci. Etienne
Bon ben je me répond a moi meme. postgreSQL 8.4 fourni a présent
WITH RECURSIVE qui permet de faire tout ce dont j'ai besoin... Domage que j'en sois a la version 8.3 :(
Etienne
WebShaker a écrit :
salut.
bon ben dans la foulée.
vu qu'il semble possible de faire des trucs plutot balaise avec postgreSQL.
j'ai une table
CREATE TABLE "tree" (
"idtree" serial NOT NULL,
"idparent" integer,
"label" text,
PRIMARY key (idtree),
FOREIGN key (idparent) REFERENCES tree (idtree)
)
Est il possible d'obtenir une liste de toute l'arborescence montant ou
descendante.
j'aimerai en fournissant
idtree = 6
j'aimerai obtenir
- tous les id fils (lui inclue) : 6, 8, 9
- tous les id peres (lui inclue) : 6, 2, 1
- la liste des label fils (lui inclue) : data005, data009, data010
- la liste des label peres (lui inclue) : data005, data001, data000
bref. Existe t il des fonctions capable de parcourir une structure
arborescente en SQL sous postgreSQL.
Merci.
Etienne
Bon ben je me répond a moi meme.
postgreSQL 8.4 fourni a présent
WITH RECURSIVE qui permet de faire tout ce dont j'ai besoin...
Domage que j'en sois a la version 8.3 :(
j'aimerai en fournissant idtree = 6 j'aimerai obtenir
- tous les id fils (lui inclue) : 6, 8, 9 - tous les id peres (lui inclue) : 6, 2, 1 - la liste des label fils (lui inclue) : data005, data009, data010 - la liste des label peres (lui inclue) : data005, data001, data000
bref. Existe t il des fonctions capable de parcourir une structure arborescente en SQL sous postgreSQL.
Merci. Etienne
Bon ben je me répond a moi meme. postgreSQL 8.4 fourni a présent
WITH RECURSIVE qui permet de faire tout ce dont j'ai besoin... Domage que j'en sois a la version 8.3 :(
Etienne
SQLpro
Dominique Ottello a écrit :
"WebShaker" écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui introduit les requêtes récursives. Aidez vous des exemples que j'ai donné dans mon cours à ce sujet : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et en particulier de l'exemple IV-D : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation Enseignant aux Arts & Métiers PACA et à L'ISEN Toulon - Var Technologies *********************** http://www.sqlspot.com *************************
Dominique Ottello a écrit :
"WebShaker" <etienne@trash.com> écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca
va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De
plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui
introduit les requêtes récursives.
Aidez vous des exemples que j'ai donné dans mon cours à ce sujet :
http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/
et en particulier de l'exemple IV-D :
http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
Enseignant aux Arts & Métiers PACA et à L'ISEN Toulon - Var Technologies
*********************** http://www.sqlspot.com *************************
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui introduit les requêtes récursives. Aidez vous des exemples que j'ai donné dans mon cours à ce sujet : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et en particulier de l'exemple IV-D : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation Enseignant aux Arts & Métiers PACA et à L'ISEN Toulon - Var Technologies *********************** http://www.sqlspot.com *************************
helios
SQLpro a écrit :
Dominique Ottello a écrit :
"WebShaker" écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui introduit les requêtes récursives. Aidez vous des exemples que j'ai donné dans mon cours à ce sujet : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et en particulier de l'exemple IV-D : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL mettre toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2 octet?
SQLpro a écrit :
Dominique Ottello a écrit :
"WebShaker" <etienne@trash.com> écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire,
mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De
plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui
introduit les requêtes récursives.
Aidez vous des exemples que j'ai donné dans mon cours à ce sujet :
http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/
et en particulier de l'exemple IV-D :
http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL
mettre toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2
octet?
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui introduit les requêtes récursives. Aidez vous des exemples que j'ai donné dans mon cours à ce sujet : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et en particulier de l'exemple IV-D : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL mettre toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2 octet?
Alain Montfranc
Il se trouve que helios a formulé :
SQLpro a écrit :
Dominique Ottello a écrit :
"WebShaker" écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui introduit les requêtes récursives. Aidez vous des exemples que j'ai donné dans mon cours à ce sujet : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et en particulier de l'exemple IV-D : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL mettre toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2 octet?
Lui au moins il a été capable d'écrire un livre ET de le publier....
Il se trouve que helios a formulé :
SQLpro a écrit :
Dominique Ottello a écrit :
"WebShaker" <etienne@trash.com> écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais
ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus
c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui
introduit les requêtes récursives.
Aidez vous des exemples que j'ai donné dans mon cours à ce sujet :
http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/
et en particulier de l'exemple IV-D :
http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL mettre
toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2 octet?
Lui au moins il a été capable d'écrire un livre ET de le publier....
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui introduit les requêtes récursives. Aidez vous des exemples que j'ai donné dans mon cours à ce sujet : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et en particulier de l'exemple IV-D : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL mettre toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2 octet?
Lui au moins il a été capable d'écrire un livre ET de le publier....
JKB
Le 01-03-2010, ? propos de Re: concatener des des champs de plusieurs record, Alain Montfranc ?crivait dans fr.comp.applications.sgbd :
Il se trouve que helios a formulé :
SQLpro a écrit :
Dominique Ottello a écrit :
"WebShaker" écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui introduit les requêtes récursives. Aidez vous des exemples que j'ai donné dans mon cours à ce sujet : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et en particulier de l'exemple IV-D : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL mettre toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2 octet?
Lui au moins il a été capable d'écrire un livre ET de le publier....
Le problème, c'est que d'autres essayent d'écrire mais restent illisibles.
JKB
-- Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre masse corporelle, mais disperse à lui seul 25% de l'énergie que nous consommons tous les jours.
Le 01-03-2010, ? propos de
Re: concatener des des champs de plusieurs record,
Alain Montfranc ?crivait dans fr.comp.applications.sgbd :
Il se trouve que helios a formulé :
SQLpro a écrit :
Dominique Ottello a écrit :
"WebShaker" <etienne@trash.com> écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais
ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus
c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui
introduit les requêtes récursives.
Aidez vous des exemples que j'ai donné dans mon cours à ce sujet :
http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/
et en particulier de l'exemple IV-D :
http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL mettre
toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2 octet?
Lui au moins il a été capable d'écrire un livre ET de le publier....
Le problème, c'est que d'autres essayent d'écrire mais restent
illisibles.
JKB
--
Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre
masse corporelle, mais disperse à lui seul 25% de l'énergie que nous
consommons tous les jours.
Le 01-03-2010, ? propos de Re: concatener des des champs de plusieurs record, Alain Montfranc ?crivait dans fr.comp.applications.sgbd :
Il se trouve que helios a formulé :
SQLpro a écrit :
Dominique Ottello a écrit :
"WebShaker" écrivait :
Bon j'aurai préféré une solution SQL plutot qu'un truc propriétaire, mais ca va le faire quand meme.
Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
Vous pouvez en revanche utiliser la CTE (Common Table Expression) qui introduit les requêtes récursives. Aidez vous des exemples que j'ai donné dans mon cours à ce sujet : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et en particulier de l'exemple IV-D : http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/#LIV-D
A +
est il imbecile de pretendre comme un certain auteur de livres sur SQL mettre toute les dates jusqu'à nos jours depuis Jésus christ codé sur 2 octet?
Lui au moins il a été capable d'écrire un livre ET de le publier....
Le problème, c'est que d'autres essayent d'écrire mais restent illisibles.
JKB
-- Le cerveau, c'est un véritable scandale écologique. Il représente 2% de notre masse corporelle, mais disperse à lui seul 25% de l'énergie que nous consommons tous les jours.
Dominique Ottello
SQLpro écrivait :
> Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
J'avais bien écrit : Si MySQL Que ce soit une fonction « imbécile », peut-être.
Néanmoins, pourriez-vous m'indiquer comment réécrire la requête ci-dessous, sans utiliser GROUP_CONCAT. Étant entendu que je ne peux utiliser : - que MySQL 5.1.xx - que des tables MyISAM - pas de procédures stockées
SELECT L.b_image, L.b_texte, L.b_mini, L.b_annexe, GROUP_CONCAT(CONCAT_WS('^',A.a_num,A.a_image,A.a_texte,A.a_impos) ORDER BY A.a_num SEPARATOR 'n') AS liste_annexes FROM avia_bib_livres AS L LEFT OUTER JOIN avia_bib_annexes AS A ON A.a_id = L.b_id WHERE L.b_ordre = '$numero' GROUP BY L.b_id
Merci -- Aujourd'hui, l'idéal du progrès est remplacé par l'idéal de l'innovation : il ne s'agit pas que ce soit mieux, il s'agit seulement que ce soit nouveau, même si c'est pire qu'avant et cela de toute évidence. Montherlant Technologie aéronautique - http://ottello.net - Les anciens de Vilgénis
SQLpro <brouardf@club-internet.fr> écrivait :
> Si MySQL : GROUP_CONCAT
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De
plus c'est une fonction imbécile car particulièrement anti relationnelle !
J'avais bien écrit : Si MySQL Que ce soit une fonction « imbécile »,
peut-être.
Néanmoins, pourriez-vous m'indiquer comment réécrire la requête
ci-dessous, sans utiliser GROUP_CONCAT. Étant entendu que je ne peux
utiliser :
- que MySQL 5.1.xx
- que des tables MyISAM
- pas de procédures stockées
SELECT L.b_image, L.b_texte, L.b_mini, L.b_annexe,
GROUP_CONCAT(CONCAT_WS('^',A.a_num,A.a_image,A.a_texte,A.a_impos)
ORDER BY A.a_num SEPARATOR 'n') AS liste_annexes
FROM avia_bib_livres AS L
LEFT OUTER JOIN avia_bib_annexes AS A ON A.a_id = L.b_id
WHERE L.b_ordre = '$numero'
GROUP BY L.b_id
Merci
--
Aujourd'hui, l'idéal du progrès est remplacé par l'idéal de l'innovation :
il ne s'agit pas que ce soit mieux, il s'agit seulement que ce soit nouveau,
même si c'est pire qu'avant et cela de toute évidence. Montherlant
Technologie aéronautique - http://ottello.net - Les anciens de Vilgénis
Ceci est spécifique à MySQL et n'existe pas en tant que norme SQL. De plus c'est une fonction imbécile car particulièrement anti relationnelle !
J'avais bien écrit : Si MySQL Que ce soit une fonction « imbécile », peut-être.
Néanmoins, pourriez-vous m'indiquer comment réécrire la requête ci-dessous, sans utiliser GROUP_CONCAT. Étant entendu que je ne peux utiliser : - que MySQL 5.1.xx - que des tables MyISAM - pas de procédures stockées
SELECT L.b_image, L.b_texte, L.b_mini, L.b_annexe, GROUP_CONCAT(CONCAT_WS('^',A.a_num,A.a_image,A.a_texte,A.a_impos) ORDER BY A.a_num SEPARATOR 'n') AS liste_annexes FROM avia_bib_livres AS L LEFT OUTER JOIN avia_bib_annexes AS A ON A.a_id = L.b_id WHERE L.b_ordre = '$numero' GROUP BY L.b_id
Merci -- Aujourd'hui, l'idéal du progrès est remplacé par l'idéal de l'innovation : il ne s'agit pas que ce soit mieux, il s'agit seulement que ce soit nouveau, même si c'est pire qu'avant et cela de toute évidence. Montherlant Technologie aéronautique - http://ottello.net - Les anciens de Vilgénis