Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/10/2010, 17:19
LOD_Fredy
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Consulta para obtener registros que contengan cierta cadena

Hola a todos, ahora vengo con un problema que acaba de detectar mi jefa al usar la pagina web que estoy haciendo.

Lo que se necesita hacer es que escribes un numero de orden y el año de publicacion, con estos datos debe buscar en la tabla registros donde la orden contenga "año/orden-numero(0 al infinito);"

los unicos datos que se introducen son el año y el numero de orden, el detalle es que en la tabla la cadena contiene mas que eso, pero si inicia con el año sin embargo la cadena tiene esta estructura: "año/orden-numero(0 al infinito);numero (0 al infinito), necesito que no tome en cuenta ese ultimo numero pero que si busque todos los que contengan el año y orden mas el -numero ya que indica cuantos hay para esa orden.

Como lo tengo por ahora falla cuando por ejemplo escribes la orden 1 del año 2010 que en si la cadena es "2010/1", pero me busca todos los registros donde contenga un 1 despues del "/" por lo que encuentra ordenes del tipo "2010/1234567890-2;234" o "2010/2134567890-2;234" o "2010/2214567890-2;234" etc o "2010/2234567890-1;234" o "2010/2234567890-2;134" etc etc.

Para esto utilizo el like como operador relacional y esta es la parte de la cadena de la consulta que realiza esto, todo lo demas esta bien:
Código SQL:
Ver original
  1. fec.orden LIKE '$this->ano/$this->ord%'

Ojala me puedan ayudar a crear la regla que me devuelva los registros correctos.
Gracias y disculpen si ya han pedido esto otros usuarios pero no supe como ponerlo en el buscador para obtener resultados.