Foros del Web » Programando para Internet » PHP »

consulta de dato que se repite

Estas en el tema de consulta de dato que se repite en el foro de PHP en Foros del Web. hola tengo un problemilla que supongo que sera simple de solucionar en una tabla tengo insertados varios conjuntos de numero por ejemplo 1 2 3 ...
  #1 (permalink)  
Antiguo 08/09/2011, 15:54
Avatar de alfoner  
Fecha de Ingreso: abril-2009
Mensajes: 146
Antigüedad: 14 años, 11 meses
Puntos: 0
Exclamación consulta de dato que se repite

hola tengo un problemilla que supongo que sera simple de solucionar

en una tabla tengo insertados varios conjuntos de numero por ejemplo

1 2 3
1 4 6
1 2 8
2 4 6

y quisiera saber por ejemplo cuantas veces se repite el 1 con el 2
que la respuesta tendria que ser que el 1 2 se repite 2 veces

gracias
  #2 (permalink)  
Antiguo 08/09/2011, 15:56
Avatar de alfoner  
Fecha de Ingreso: abril-2009
Mensajes: 146
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: consulta de dato que se repite

he probado con

$result = mysql_query("SELECT * FROM numeromas WHERE numero LIKE '%1 2%'");

$numero4 = mysql_num_rows($result);
echo "el numero 1 y 2 sale ".$numero4." veces";

pero el resultado es el total de veces que sale el 1 y el 2 no el total de veces que sale el 1 con el 2
  #3 (permalink)  
Antiguo 08/09/2011, 16:56
Avatar de alfoner  
Fecha de Ingreso: abril-2009
Mensajes: 146
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: consulta de dato que se repite

La consulta mysql_query tendria que ser que seleccionase los que estuviese el 1 con el 2 ademas de el resto..

pero no lo consigo
  #4 (permalink)  
Antiguo 08/09/2011, 17:22
Avatar de blakmetall  
Fecha de Ingreso: diciembre-2010
Ubicación: Jalisco
Mensajes: 181
Antigüedad: 13 años, 3 meses
Puntos: 18
Respuesta: consulta de dato que se repite

la consula de alla arriba me parece correcta, o cuantos coincidencias te arroja?
  #5 (permalink)  
Antiguo 09/09/2011, 05:28
Avatar de alfoner  
Fecha de Ingreso: abril-2009
Mensajes: 146
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: consulta de dato que se repite

en este caso me pondria 3 por que me cuenta cuantas veces se repite el 1 y no el 1 con el 2
  #6 (permalink)  
Antiguo 09/09/2011, 09:42
Avatar de blakmetall  
Fecha de Ingreso: diciembre-2010
Ubicación: Jalisco
Mensajes: 181
Antigüedad: 13 años, 3 meses
Puntos: 18
Respuesta: consulta de dato que se repite

pues hice una tabla introduje los campos y mira los resultados, para que veas que si funciona.

Código MySQL:
Ver original
  1. mysql> use test;
  2. Database changed
  3. mysql> desc numero;
  4. +--------+-------------+------+-----+---------+-------+
  5. | Field  | Type        | Null | Key | Default | Extra |
  6. +--------+-------------+------+-----+---------+-------+
  7. | numero | varchar(10) | YES  |     | NULL    |       |
  8. +--------+-------------+------+-----+---------+-------+
  9. 1 row in set (0.00 sec)
  10.  
  11. mysql> select * from numero;
  12. +--------+
  13. | numero |
  14. +--------+
  15. | 1 2 3  |
  16. | 1 4 6  |
  17. | 1 2 8  |
  18. | 2 4 6  |
  19. +--------+
  20. 4 rows in set (0.00 sec)
  21.  
  22. mysql> select * from numero where numero like '%1 2%';
  23. +--------+
  24. | numero |
  25. +--------+
  26. | 1 2 3  |
  27. | 1 2 8  |
  28. +--------+
  29. 2 rows in set (0.00 sec)
  30.  
  31. mysql>
  #7 (permalink)  
Antiguo 09/09/2011, 13:02
Avatar de alfoner  
Fecha de Ingreso: abril-2009
Mensajes: 146
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: consulta de dato que se repite

si, hasta ahi bien perfecto el problema esta en que si pusieramos los mismos pero con estos numeros

1 24 3
1 4 6
1 2 8
2 4 6


me reconoce que ahi 2 cuando ya no ahi dos por que uno es 24 y no 2
me tendria que decir que ahora ahi solo 1

no se si me explico bien
  #8 (permalink)  
Antiguo 09/09/2011, 20:49
Avatar de hasdpk  
Fecha de Ingreso: agosto-2011
Ubicación: $spain->city( 'Arucas' );
Mensajes: 1.800
Antigüedad: 12 años, 6 meses
Puntos: 297
Respuesta: consulta de dato que se repite

A mi lo que se me ocurre es que pongas un espacio al final, ante del porcentaje.

Código SQL:
Ver original
  1. SELECT * FROM numero WHERE numero LIKE '%1 2 %';

El problema reside en que si es por ejemplo "4 1 2" no te lo cogería, ya que no hay un espacio después del 2, de todas formas podrías usar una Expresión Regular para buscar de formas más adecuada - http://dev.mysql.com/doc/refman/5.0/en/regexp.html#operator_regexp

Última edición por hasdpk; 09/09/2011 a las 21:00
  #9 (permalink)  
Antiguo 10/09/2011, 00:14
Avatar de blakmetall  
Fecha de Ingreso: diciembre-2010
Ubicación: Jalisco
Mensajes: 181
Antigüedad: 13 años, 3 meses
Puntos: 18
Respuesta: consulta de dato que se repite

igual puedes hacer esto para que te filtre bien lo que quieres.

si, lo que pasa es que no especificaste que sean numeros los que buscas el 1 y el 2 pero separados. yo entendi que dijiste el 1 y el 2... no importando que hay antes y/o despues.

entonces la consulta dejala de esta manera

Código MySQL:
Ver original
  1. SELECT * FROM numero
  2. numero LIKE '% 1 2 %' or
  3. numero LIKE '1 2 %' or
  4. numero LIKE '% 1 2' or
  5. numero LIKE '1 2';

la primera es para numeros uno con strings como este: "3 4 1 2 6" ---> 1 y 2 centrales
la seguna es para numero con string como este: "1 2 4 5" ---> 1 inicial, 2 central
la tercera para strings: '3 4 1 2'; ---> 1 central, 2 final
la cuarta para string como: '1 2'; ---> 1 y 2 inicial y final.

de esta manera filtras todas las combinaciones.
  #10 (permalink)  
Antiguo 11/09/2011, 14:45
Avatar de alfoner  
Fecha de Ingreso: abril-2009
Mensajes: 146
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: consulta de dato que se repite

Genial, poniendo los espacios si me da el resultado que busco...
Muchas gracias

Etiquetas: dato, tabla
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 11:58.