Operador In (Microsoft Access SQL)

Se aplica a: Access 2013 | Access 2016

Determina si el valor de una expresión es igual a uno de los valores de una lista especificada.

Sintaxis

expr [ Not ] In ( value1, value2, ... )

expr [ Not ] In ( SELECT ... )

Comentarios

La sintaxis del operador In consta de los siguientes elementos:

Parte Descripción
expr Expresión que identifica el campo que contiene los datos que se quieren evaluar.
value1, value2 Expresión o lista de expresiones con las que desea evaluar expresión.

Si se encuentra expr en la lista de valores, el operador In devuelve True; De lo contrario, devuelve False. Puede incluir el operador lógico Not para evaluar la condición contraria (si expresión no se encuentra en la lista de valores).

Por ejemplo, puede usar In para determinar qué pedidos se han enviado a un conjunto de regiones especificadas:

SELECT * 
FROM Orders 
WHERE ShipRegion In ('Avon','Glos','Som')

También puede usar En para hacer referencia a una tabla o consulta que existe en un archivo de base de datos externa:

SELECT qryValues 
FROM qryValues In 'c:\files\MyDB.accdb'

Ejemplo:

En el siguiente ejemplo, se utiliza la tabla Orders de la base de datos Neptuno.mdb para crear una consulta que incluye todos los pedidos enviados a Lancashire y Essex así como las fechas de envío.

En este ejemplo, se llama al procedimiento EnumFields, que se incluye en el ejemplo de la instrucción SELECT.

Sub InX() 
 
    Dim dbs As Database, rst As Recordset 
 
    ' Modify this line to include the path to Northwind 
    ' on your computer. 
    Set dbs = OpenDatabase("Northwind.mdb") 
 
    ' Select records from the Orders table that 
    ' have a ShipRegion value of Lancashire or Essex. 
    Set rst = dbs.OpenRecordset("SELECT " _ 
        & "CustomerID, ShippedDate FROM Orders " _ 
        & "WHERE ShipRegion In " _ 
        & "('Lancashire','Essex');") 
     
    ' Populate the Recordset. 
    rst.MoveLast 
     
    ' Call EnumFields to print the contents of 
    ' the Recordset. 
    EnumFields rst, 12 
 
    dbs.Close 
 
End Sub

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.