Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Problema al repetirse registros (La consulta con el Distinct Aparentemente esta bien)

Estas en el tema de Problema al repetirse registros (La consulta con el Distinct Aparentemente esta bien) en el foro de Bases de Datos General en Foros del Web. Buenas tardes Amigos, tengo el siguiente problema en una consulta para seleccionar que no se repita el nombre del Banco Tengo 2 tablas Bancos idBanco ...
  #1 (permalink)  
Antiguo 18/11/2008, 14:38
 
Fecha de Ingreso: julio-2008
Mensajes: 96
Antigüedad: 15 años, 9 meses
Puntos: 0
Problema al repetirse registros (La consulta con el Distinct Aparentemente esta bien)

Buenas tardes Amigos, tengo el siguiente problema en una consulta para seleccionar que no se repita el nombre del Banco

Tengo 2 tablas

Bancos
idBanco (LLave Primaria)
nombreBanco



Cuentas
idCuenta (Llave Primaria)
idBanco (Llave Foranea)
numeroCuenta



Mi consulta es la siguiente:

Código PHP:
SELECT DISTINCT (ba.nombreBanco) as nombreBanco,ba.idBanco as idBanco,cu.numeroCuenta as numeroCuentaCompania FROM cuentas as cu,bancos as ba WHERE ba.idBanco=cu.idBanco 

El problema es que si tengo 2 cuentas para ese banco me muestra 2 veces el nombre del banco y de verdad no se q hacer porq aparentemente la consulta esta bien estructurada.


Amigo espero su ayuda ya q estoy un poco atrasado por esta consulta.

De antemano muchas gracias...!!!
  #2 (permalink)  
Antiguo 18/11/2008, 14:44
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problema al repetirse registros (La consulta con el Distinct Aparentemente

Tema trasladado a Bases de Datos.
  #3 (permalink)  
Antiguo 18/11/2008, 15:29
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Problema al repetirse registros (La consulta con el Distinct Aparentemente

DISTINCT sirve para todos los elementos del SELECT. Quiero decir que si sólo pusieras tras el select el nombre del banco te funcionaría, pero como el numero de cuenta también lo introduces, además de otros campos, y esos no coinciden, la cadena no es igual y por tanto repite esa parte, puesto que el resto es diferente.

SELECT DISTINCT (ba.nombreBanco) as nombreBanco,ba.idBanco as idBanco,cu.numeroCuenta

Deja sólo en la selección SELECT DISTINCT (ba.nombreBanco) as nombreBanco,ba.idBanco as idBanco...

pero si quieres ver las cuentas, es lógico que se repita el banco.

Podrías usar GROUP BY ba.idBanco para que no se repitiera, y ya no te haría falta el DISTINCT, pero el problema es, creo, que decidas qué campos quieres ver. Si quieres sacar las cuentas y mostrar el banco, y hay varias cuentas de un mismo banco, el dato del nombre del campo se repetirá. Cosa distinta es que luego decidas mostrarlo una vez nada más, para lo que podrás usar la programación.

Dinos qué quieres sacar y cómo, y tal vez podamos orientarte algo mejor.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:16.