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

Consulta para obtener registros que contengan cierta cadena

Estas en el tema de Consulta para obtener registros que contengan cierta cadena en el foro de Oracle en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 22/10/2010, 17:19
 
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.
  #2 (permalink)  
Antiguo 23/10/2010, 08:44
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Consulta para obtener registros que contengan cierta cadena

Mira el tema de REGEXP_LIKE

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 25/10/2010, 11:59
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Consulta para obtener registros que contengan cierta cadena

Ya lo solucione, gracias.
  #4 (permalink)  
Antiguo 25/10/2010, 12:14
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Consulta para obtener registros que contengan cierta cadena

Como lo hiciste?

Es de buena educación compartir tu respuesta.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 25/10/2010, 19:07
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Consulta para obtener registros que contengan cierta cadena

Pues en mi caso fue sencillo, solo que en el momento me cicle:

el codigo anterior cambia por este

Código SQL:
Ver original
  1. fec.orden LIKE '$this->ano/$this->ord-%'

agregando el - se soluciona, esto debido a que siempre lleva este caracter despues del numero de orden.

Gracias y disculpen que haya molestado con algo que tenia una solucion tan simple.
  #6 (permalink)  
Antiguo 26/10/2010, 03:47
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 16 años, 10 meses
Puntos: 43
Respuesta: Consulta para obtener registros que contengan cierta cadena

De todas maneras, quedate con lo que te ha comentado Huesos.

Si tienes un problema y lo solucionas, no está de mas que pongas como lo solucionaste, así podrías ayudar a algun forero con el mismo problema que has tenido tu.
  #7 (permalink)  
Antiguo 26/10/2010, 16:27
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Consulta para obtener registros que contengan cierta cadena

jc por las prisas no lo hice, normalmente lo hago pero ando acarrereado ya que me queda poco tiempo para terminar la pagina y aun hay muchos detalles por solucionar como el poder conectar remotamente mi pagina con la base de datos oracle (ya cree un tema con este problema).

Etiquetas: registros, cadenas
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 12:25.