MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 20/06/11, 19:56:30
cirsgo cirsgo is offline
Junior Member
 
Fecha de Ingreso: jun 2011
Mensajes: 11
where campo = '5***' los * pueden ser cualquier valor

Hola a todos!

Tengo una subquery y dentro de la sentencia where debo poner que un campo en concreto sea 5**** o 6****, es decir cinco lo que sea o seis lo que sea...¿alguien puede decirme cómo puedo hacer esto en una select?

SELECT SINGLE * INTO L_WA_ITAB
FROM t77ed
WHERE awart ='5***' o '6***'???

He probado a creear una variable de tipo string y concatenar:
concatenate '5' '%' into variable. Y en vez de %, * pero nada.
Y también creando rangos...

Seguro que es una tontería pero...alguien puede decirme cómo hacerlo.

Muchas gracias!!
Responder Con Cita
  #2  
Viejo 20/06/11, 21:02:42
Avatar de DCErick
DCErick DCErick is offline
Moderator
 
Fecha de Ingreso: mar 2006
Localización: Monterrey
Mensajes: 1,090

Usa like en lugar de =

where campo like ....
__________________
-------------------
¿Dudas para descargar manuales? Ver este tema ->
Responder Con Cita
  #3  
Viejo 21/06/11, 07:25:06
cirsgo cirsgo is offline
Junior Member
 
Fecha de Ingreso: jun 2011
Mensajes: 11
Gracias,

concatenate '5' '%' into variable.
SELECT SINGLE * INTO L_WA_ITAB
FROM t77ed
WHERE awart LIKE variable.

Todo ok
Responder Con Cita
  #4  
Viejo 23/06/11, 15:48:50
K-MUS K-MUS is offline
Member
 
Fecha de Ingreso: feb 2006
Localización: Capital Federal
Mensajes: 87
En verdad si vos sabes que son 4 caracteres deberías usar

LIKE '5___'.

el _ es un comodín pero determina una posición, por ende la búsqueda va a ser un poco más rápida, ya que descartas todos los valores mayores a 4 dígitos, en cambio si usas '5%' toma todo lo que empieza con 5.
Responder Con Cita
  #5  
Viejo 27/06/11, 11:20:45
jarabas jarabas is offline
Senior Member
 
Fecha de Ingreso: ene 2010
Mensajes: 109
Eso de los guiones bajos es la primera vez que lo veo, funciona? yo estoy probando y no me funciona.

SAludos
Responder Con Cita
  #6  
Viejo 27/06/11, 14:23:01
K-MUS K-MUS is offline
Member
 
Fecha de Ingreso: feb 2006
Localización: Capital Federal
Mensajes: 87
Si, te paso el link a la SAP HELP


Comparing Strings

To find out whether the value of a column matches a pattern, use:

SELECT ... WHERE <s> [NOT ] LIKE <f> [ESCAPE <h>] ...

The condition is true if the value of the column <s> matches [does not match] the pattern in the data object <f>. You can only use this test for text fields. The data type of the column must be alphanumeric. <f> must have data type C.

You can use the following wildcard characters in <f>:

% for a sequence of any characters (including spaces).
_ for a single character.


For example, ABC_EFG% matches the strings ABCxEFGxyz and ABCxEFG, but not ABCEFGxyz. If you want to use the two wildcard characters explicitly in the comparison, use the ESCAPE option. ESCAPE <h> specifies an escape symbol <h>. If preceded by <h>, the wildcards and the escape symbol itself lose their usual function within the pattern <f>. The use of _ and % corresponds to Standard SQL usage. Logical expressions elsewhere in ABAP use other wildcard characters (+ and *).

You cannot use LIKE in the ON condition of the FROM clause.
Responder Con Cita
  #7  
Viejo 27/06/11, 14:55:51
jarabas jarabas is offline
Senior Member
 
Fecha de Ingreso: ene 2010
Mensajes: 109
Ok, gracias pero haciendo dos select a la LFA1, una con el % y otra con _ para que salgan cosas distintas, me devuelve los mismos mismos registros.

Que puedo estar haciendo mal? por que esto me parece bastante interesante y util a la hora de optimizar consultas.

Gracias de antemano.

Saludos.

Edito:
tienes toda la razón del mundo, lo estaba probando mal estaba poniendo algo que me devolvia lo misma.

gracias nuevamente.

Úlima edición por jarabas fecha: 27/06/11 a las 15:01:01.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 09:53:38.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web