Expresión lógica con IN

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • davidr
    Member
    • ene
    • 72

    #1

    Expresión lógica con IN

    Hola a todos,
    estoy buscando una expresión lógica (si existe) equivalente a lo siguiente:

    if vble_char in ( 'cadena1' 'cadena2' 'cadena3 )
    .....

    Si lo hiciesemos con condiciones separadas sería algo como ésto:
    if vble_char <> 'cadena1' and
    vble_char <> 'cadena2' and
    vble_char <> 'cadena3'.
    .....


    Estoy probando a hacerlo con IN pero sólo sirve con tablas internas.

    Si alguien me puede ayudar.

    Gracias de antemano.
  • abfv
    Senior Member
    • feb
    • 144

    #2
    Expresion IN

    Hola, te paso un ejemplo a ver si es lo que necesitas.

    SELECT * FROM XXXX
    INTO CORRESPONDING FIELDS OF TABLE t_XXXX
    WHERE zeity = w_zeity
    AND kjahr IN (w_anioi , w_aniof).


    w_anioi y w_aniof son variables cargadas con anterioridad.

    Saludos.

    Comentario

    • mysmb2
      Senior Member
      • ene
      • 406

      #3
      Hola es sencillo, solo tenes que usar un rango con los valores a comparar

      r_cadena-SIGN = 'I'.
      r_cadena-OPTION = 'EQ'.
      r_cadena-LOW ='cadena1'.
      append r_cadena.
      ..
      y asi con cadena2, cadena3 etc...

      luego lo comparas
      if vble_char in r_cadena.


      saludos
      Sebastián Chiavia
      http://www.programacionabap.com.ar

      Comentario

      Trabajando...