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

Condicion in el oracle

Estas en el tema de Condicion in el oracle en el foro de Oracle en Foros del Web. Hola amigos, tengo una duda con la condición 'in' en oracle, quiero saber si la condición 'in' tiene alguna restricción por que necesito poner 2000 ...
  #1 (permalink)  
Antiguo 09/06/2010, 22:30
 
Fecha de Ingreso: abril-2008
Mensajes: 14
Antigüedad: 16 años, 7 meses
Puntos: 0
Condicion in el oracle

Hola amigos, tengo una duda con la condición 'in' en oracle, quiero saber si la condición 'in' tiene alguna restricción por que necesito poner 2000 validaciones de la siguiente manera:

select nombre from tabla where id_tabla in ('1','2','3'........2000).

O si me pueden aportar alguna otra solucion estaria agredecido.

Saludos.
  #2 (permalink)  
Antiguo 10/06/2010, 17:32
Avatar de xf_corp  
Fecha de Ingreso: mayo-2008
Mensajes: 57
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: Condicion in el oracle

Hola, de donde obtienes los valores de la lista?, si se ubica en alguna tabla, puedes emplear un select para el in como alternativa:

select nombre from tabla where id_tabla in (select id_tabla from otra_tabla where condicion_para_obtener_ids_tabla).

Respecto a la restricción, quizá esto te sea útil:

(ORA-01795: maximum number of expressions in a list is 1000)

http://asktom.oracle.com/pls/asktom/...D:778625947169

Saludos .
  #3 (permalink)  
Antiguo 11/06/2010, 09:05
Avatar de -rommel_  
Fecha de Ingreso: junio-2008
Ubicación: Lima
Mensajes: 360
Antigüedad: 16 años, 5 meses
Puntos: 1
Respuesta: Condicion in el oracle

la consulta que indica xf_corp esta bien... pero yo reemplaria el IN por EXISTS... es mucho mas rapido :D y si los trabajas con sus INIDCES... la consulta no DEMORA NADA...

Amigo de Alguna u otra manera tienes que meter esos valor a una TABLA de tu BD

Etiquetas: Ninguno
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 06:23.