Ver Mensaje Individual
  #4 (permalink)  
Antiguo 10/04/2012, 08:08
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: LIKE en un procedure mysql

Hola srnetworks:

Veo que no terminas de entender para qué se utiliza el operador LIKE. De la manera en que estás utilizandolo FUNCIONA EXACTAMENTE IGUAL QUE UNA CONDICIÓN DE IGUALDAD. Como te dije en el post pasado, el operador LIKE sirve para búsqueda de patrones, SIEMPRE Y CUANDO SE UTILICEN CARACTERES COMODÍN (%, _) checa este script:

Código MySQL:
Ver original
  1. mysql> select * from usuarios;
  2. +------+----------+
  3. | u_id | u_nombre |
  4. +------+----------+
  5. |    1 | uno      |
  6. |    2 | dos      |
  7. |   11 | otro uno |
  8. |    3 | uno      |
  9. +------+----------+
  10. 4 rows in set (0.00 sec)
  11.  
  12. mysql> select * from usuarios where u_nombre = 'uno';
  13. +------+----------+
  14. | u_id | u_nombre |
  15. +------+----------+
  16. |    1 | uno      |
  17. |    3 | uno      |
  18. +------+----------+
  19. 2 rows in set (0.03 sec)
  20.  
  21. mysql> select * from usuarios where u_nombre like 'uno';
  22. +------+----------+
  23. | u_id | u_nombre |
  24. +------+----------+
  25. |    1 | uno      |
  26. |    3 | uno      |
  27. +------+----------+
  28. 2 rows in set (0.03 sec)
  29.  
  30. mysql> select * from usuarios where u_nombre like '%uno%';
  31. +------+----------+
  32. | u_id | u_nombre |
  33. +------+----------+
  34. |    1 | uno      |
  35. |   11 | otro uno |
  36. |    3 | uno      |
  37. +------+----------+
  38. 3 rows in set (0.00 sec)

Observa las dos primeras consultas, REGRESAN EXACTAMENTE EL MISMO RESULTADO, pero la condición de igualdad es más eficiente que el LIKE.

En cuanto al error, ¿probaste el código que puse?, es decir, no comentas nada acerca de si pudiste resolver el problema con el código que te pose o sigues en las mismas... mucho ojo con eso.

Saludos
Leo.