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

No se como hacer esta consulta!!!!

Estas en el tema de No se como hacer esta consulta!!!! en el foro de Mysql en Foros del Web. Hola a todos, necesito hacer una consulta y sinceramente estuve probando y no me sale, les cuento mi problema: Tengo la siguiente tabla:(nombre: count, dos ...
  #1 (permalink)  
Antiguo 04/02/2006, 14:16
 
Fecha de Ingreso: enero-2005
Mensajes: 30
Antigüedad: 19 años, 3 meses
Puntos: 0
No se como hacer esta consulta!!!!

Hola a todos, necesito hacer una consulta y sinceramente estuve probando y no me sale, les cuento mi problema:
Tengo la siguiente tabla:(nombre: count, dos campos, Id y Pais)
------Ip---------------Pais
68.142.249.134 -----Estados Unidos
68.142.249.134 -----Estados Unidos
170.51.255.253 -----Argentina
170.51.255.253 -----Argentina

Necesito que me mueste el pais y la cantidad de veces que aparece en la tabla, pero filtrando antes por ip, es decir, que NO cuente un pais que tenga el mismo ip, en el ejemplo deberia mostrar:

------Pais---------------Cantidad
Estados Unidos ------------1
Argentina -----------------1

y no esto:

------Pais---------------Cantidad
Estados Unidos ------------2
Argentina -----------------2

yo probé haciendo esto:
SELECT pais, count(pais)
FROM count
GROUP BY pais

pero eso me muestra el pais y la cantidad y sin ver si es un mismo ip o no, es decir seria una mal cuenta, no es real.
Bueno, espero que me puedan ayudar, desde ya Muchas Gracias a todos!!!
Saludos!!!!!!

__________________
Dios al humilde levanta y al orgulloso quebranta :-)
  #2 (permalink)  
Antiguo 04/02/2006, 22:59
Avatar de BreCkver  
Fecha de Ingreso: enero-2006
Ubicación: Mexico, D.F.
Mensajes: 96
Antigüedad: 18 años, 3 meses
Puntos: 0
Si entendi bien; ya probaste con esto:

Código:
SELECT pais, count(distinct pais)
FROM count
GROUP BY pais


::Espero haber ayudado.
__________________

:-D No solo soy mexicano también soy del Politécnico :arriba:

  #3 (permalink)  
Antiguo 04/02/2006, 23:08
 
Fecha de Ingreso: enero-2005
Mensajes: 30
Antigüedad: 19 años, 3 meses
Puntos: 0
BreCkver, muchas gracias por tu respuesta, pero me dio error de sintaxis..gracias de todos modos...saludos
__________________
Dios al humilde levanta y al orgulloso quebranta :-)
  #4 (permalink)  
Antiguo 04/02/2006, 23:20
Avatar de BreCkver  
Fecha de Ingreso: enero-2006
Ubicación: Mexico, D.F.
Mensajes: 96
Antigüedad: 18 años, 3 meses
Puntos: 0
Perdon me equivoque
Ahora checa este:

Código:
SELECT Count(DISTINCT pais) 
FROM count
GROUP BY pais;
A ver que tal te va el anterior?
__________________

:-D No solo soy mexicano también soy del Politécnico :arriba:

  #5 (permalink)  
Antiguo 04/02/2006, 23:31
 
Fecha de Ingreso: enero-2005
Mensajes: 30
Antigüedad: 19 años, 3 meses
Puntos: 0
Me dice: error de sintaxis (falta operador) en la expresion de consulta Count(DISTINCT pais)
__________________
Dios al humilde levanta y al orgulloso quebranta :-)
  #6 (permalink)  
Antiguo 04/02/2006, 23:59
Avatar de BreCkver  
Fecha de Ingreso: enero-2006
Ubicación: Mexico, D.F.
Mensajes: 96
Antigüedad: 18 años, 3 meses
Puntos: 0
haa que es lo que pasa? ami me funciono :
Checa este otro
Código:
SELECT Count(DISTINCT pais) 
AS Pais FROM count;
Si no funciona disculpa mi ignorancia. Eh aprendido mucho de esta leccion, voy a estudiar mas.
__________________

:-D No solo soy mexicano también soy del Politécnico :arriba:

  #7 (permalink)  
Antiguo 05/02/2006, 00:35
 
Fecha de Ingreso: enero-2005
Mensajes: 30
Antigüedad: 19 años, 3 meses
Puntos: 0
BreCkver, me tira el mismo error..de todas formas MUCHAS GRACIAS por preocuparte
__________________
Dios al humilde levanta y al orgulloso quebranta :-)
  #8 (permalink)  
Antiguo 06/02/2006, 07:35
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
holas danioviedo, mira tengo una consulta antes que todo, con que version de mysql estas, estas con una version que soporte subconsultas (si no me equivoco mayor o igual a 4.1.x ), si es asi talvez puedas hacer esto:
Código PHP:
//paises disntintos ip's

SELECT COUNT(*) 
FROM (SELECT DISTINCT pais,ip  FROM tabla) AS tabla 
GROUP BY pais

espero haber entendido la idea de lo que quieres hacer (contar todos los paises y los paises con mismo ip solo contar una vez) y ahora tambien si no tienes subconsultas, podria crearse vistas o y con eso arreglamos lo de las subconsultas, bueno, comentas que tal te va, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
  #9 (permalink)  
Antiguo 06/02/2006, 10:49
 
Fecha de Ingreso: enero-2005
Mensajes: 30
Antigüedad: 19 años, 3 meses
Puntos: 0
deadlykyo eso es exactamente lo que queria hacer!!!!!!! sos un genio!!! Mil Gracias, solo le modifique ponerle para que me muestre el pais...lo deje asi:

SELECT pais, COUNT(*)
FROM (SELECT DISTINCT pais,ip FROM tabla) AS tabla
GROUP BY pais

Probé la consulta en Microsoft Access y me funciono de 10!! pero cuando pongo la consulta en mi pagina en php, sql no me deja...no me muestra nada...no se que puede ser...osea...la sentencia funciona porque la probe en Microsoft Access y me funcionó...pero en sql no me funcionó...se te ocurre que puede ser? la version de MySql que tengo es: 4.0.23
__________________
Dios al humilde levanta y al orgulloso quebranta :-)
  #10 (permalink)  
Antiguo 06/02/2006, 11:09
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
creo que el problema es por tu version, ya que recien a partir del 4.1.xx para arriba, recien se puede usar subconsultas, ahora no se si no puedes actualizar tu version de mysql podrias intentar hace rlo que te dije con vistas, lo malo es que serian mas de una consulta, seria algo asi:

Código:
mysql>CREATE VIEW vista AS SELECT DISTINCT pais,ip FROM tabla;
mysql> SELECT pais, COUNT(*) FROM vista GROUP BY pais;
mysql> DROP VIEW vista;
cya
__________________
"El Conocimiento es de todos, no solo de algunos"
  #11 (permalink)  
Antiguo 07/02/2006, 09:41
 
Fecha de Ingreso: enero-2005
Mensajes: 30
Antigüedad: 19 años, 3 meses
Puntos: 0
deadlykyo PROBLEMA SOLUCIONADO!!! MUCHISIMAS GRACIAS!!!!!!!! ME FUNCIONO TU CONSULTA CON SUBCONSULTAS!!

SELECT pais, COUNT(*)
FROM (SELECT DISTINCT pais,ip FROM tabla) AS tabla
GROUP BY pais

LO QUE HICE FUE BAJAR DE LA PAGINA DE MYSQL LA VERSION 5.0 LO INSTALÉ Y LA CONSULTA QUE ANTES CON LA VERSION 4.0.23 NO ME FUNCIONABA AHORA SI ME FUNCIONA PERFECTO!!!!!!!

ME FILTRA LAS IPS QUE SEAN IGUALES Y DE AHI EN ADELANTE ME MUESTRA LOS PAISES ASOCIADAS A ESAS IP Y CUANTAS VECES SE REPITE EL PAIS...TAL COMO QUERIA YO Y EXPLIQUÉ EN MAS ARRIBA.

REALMENTE QUIERO AGRADECERTE deadlykyo SOS UNA PIEZA VALIOSISIMA Y FUNDAMENTAL DEL FORO!!!! AYUDAS A TODOS..Y YO TE ESTOY MUY AGRADECIDO...SIEMPRE TENGO RESPUESTAS TUYAS CUANDO TE NECESITO, ESPERO SERTE UTIL ALGUNA VEZ...CREO QUE TODOS LOS USUARIOS DEL FORO PIENSAN LO MISMO QUE YO...

MUCHISIMAS GRACIAS deadlykyo UNA VEZ MAS!!!!
__________________
Dios al humilde levanta y al orgulloso quebranta :-)
  #12 (permalink)  
Antiguo 07/02/2006, 10:04
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
Te agradezo los comentarios, pero trata de hacerlo siempre en minusculas ya que en mayusculas se toma como si estuvieras gritando, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
  #13 (permalink)  
Antiguo 07/02/2006, 10:43
 
Fecha de Ingreso: enero-2005
Mensajes: 30
Antigüedad: 19 años, 3 meses
Puntos: 0
Ok, perdon...no sabia que significaba eso
saludos
__________________
Dios al humilde levanta y al orgulloso quebranta :-)
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 04:36.