[Madrid-pm] Crear listados desde una BD

Salvador Fandino sfandino en yahoo.com
Mie Jul 9 03:51:21 PDT 2008


Esta consulta obtiene los pares en SQLite:


sqlite> select a.nombre, b.nombre from paises as a, paises as b where a.id == b.id and a.nombre < b.nombre;
ESP|USA
ESP|ITA
ITA|USA
JPN|RUS

sqlite> select * from paises;
1|ESP
1|USA
1|ITA
2|JPN
2|RUS
3|VEN

puede que para mysql tengas que cambiar alguna cosa, pero la idea deberia de servirte

- Salva



----- Original Message ----
From: PEGG <preiddy en gmail.com>
To: Lista de correo de Madrid Perl Mongers <madrid-pm en pm.org>
Sent: Wednesday, July 9, 2008 12:36:26 PM
Subject: [Madrid-pm] Crear listados desde una BD

Hola, tengo una tabla en una BD de mysql que almacena el nombre de un país y su correspondiente id.
Por ejemplo:
ID - País
1 - ESP
1 - USA
1 - ITA
2 - JPN
2 - RUS
3 - VEN

Mi problema es que tengo que consultar la tabla y juntar las direcciones, quedando así:
ESP - USA
ESP - ITA
USA - ITA
JPN - RUS 

VEN no aparecería porque está sola.

La consulta sql: "SELECT id, pais from direcciones".
He probado así:
while ( @direcciones = $sth->fetchrow_array() ) {
foreach $direccion (@direcciones) {
        
        foreach $agrupa (@direcciones) {
            if ( $direccion eq $agrupa ) { }
            else {
                print "\U$direccion;$agrupa\n";
           }
        }
    }
Pero no lo muestra como quiero, ya no se que hacer. 
Agradezco vuestros comentarios.



      
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.pm.org/pipermail/madrid-pm/attachments/20080709/05d15593/attachment.html>


Más información sobre la lista de distribución Madrid-pm