Construcción de cadenas de filtro para el Diseñador de tablas
Nota
Este artículo se aplica a Azure Azure Cloud Services (soporte extendido). Cloud Services (clásico) se retira a partir del 31 de agosto de 2024. Para obtener más información, consulte el modelo de implementación de Cloud Services (clásico) se va a retirar el 31 de agosto de 2024. Para el nuevo desarrollo, se recomienda usar un tipo de servicio más reciente diseñado para su propósito específico, como Azure App Service, Azure Functionso Azure Container Apps. Para obtener la lista más reciente de los servicios disponibles, consulte Directorio de productos de Azure.
Para filtrar los datos de una tabla de Azure que se muestra en el Diseñador de tablas de Visual Studio , cree una cadena de filtro y escríbala en el campo de filtro. La sintaxis de filtro de cadena está definida por WCF Data Services y es similar a una cláusula SQL WHERE
, pero se envía al servicio Table a través de una solicitud HTTP. El diseñador de tablas controla la codificación adecuada para usted, por lo que para filtrar por un valor de propiedad deseado, solo debe escribir el nombre de propiedad, el operador de comparación, el valor de criterios y, opcionalmente, el operador booleano en el campo de filtro. No es preciso incluir la opción de consulta $filter
como lo haría si fuera a construir una dirección URL para realizar consultas en la tabla a través de la referencia de la API REST de servicios de almacenamiento.
WcF Data Services se basa en el open data Protocol (OData). Para obtener más información sobre la opción de consulta del sistema de filtro ($filter), consulte la especificación de convenciones de URI de OData .
Operadores de comparación
Se admiten los siguientes operadores lógicos para todos los tipos de propiedad:
Operador lógico | Descripción | Cadena de filtro de ejemplo |
---|---|---|
eq | Igual | Ciudad eq "Redmond" |
gt | Mayor que | Precio gt 20 |
ge | Mayor o igual que | Precio ge 10 |
lt | Menor que | Precio lt 20 |
le | Menor o igual que | Precio le 100 |
Ne | No es igual | Ciudad ne 'Londres' |
y | y | Precio le 200 and Precio gt 3,5 |
o | O bien | Precio 3,5 or Precio gt 200 |
not | not | no está disponible |
Al construir una cadena de filtro, las reglas siguientes son importantes:
- Use los operadores lógicos para comparar una propiedad con un valor. No es posible comparar una propiedad con un valor dinámico; un lado de la expresión debe ser una constante.
- Todas las partes de la cadena de filtro distinguen mayúsculas de minúsculas.
- El valor constante debe ser del mismo tipo de datos que la propiedad para que el filtro devuelva resultados válidos. Para obtener más información sobre los tipos de propiedades admitidos, vea Descripción del modelo de datos de Table Service.
Filtrado en propiedades de cadena
Al filtrar por propiedades de cadena, incluya la constante de cadena entre comillas simples.
En el ejemplo siguiente se filtran las propiedades PartitionKey y RowKey; También se podrían agregar propiedades adicionales que no son de clave a la cadena de filtro:
PartitionKey eq 'Partition1' and RowKey eq '00001'
Puede incluir cada expresión de filtro entre paréntesis, aunque no es necesario:
(PartitionKey eq 'Partition1') and (RowKey eq '00001')
Table service no admite consultas con caracteres comodín y tampoco se admiten en el Diseñador de tablas. Sin embargo, puede realizar la coincidencia de prefijos mediante operadores de comparación en el prefijo deseado. En el ejemplo siguiente se devuelven entidades con una propiedad LastName a partir de la letra "A":
LastName ge 'A' and LastName lt 'B'
Filtrado de propiedades numéricas
Para filtrar por un número entero o de punto flotante, especifique el número sin comillas.
Este ejemplo devuelve todas las entidades con una propiedad Age cuyo valor es mayor que 30:
Age gt 30
En este ejemplo se devuelven todas las entidades con una propiedad AmountDue cuyo valor es menor o igual que 100,25:
AmountDue le 100.25
Filtrado de propiedades booleanas
Para filtrar por un valor booleano, especifique true o false sin comillas.
En el ejemplo siguiente se devuelven todas las entidades en las que la propiedad IsActive está establecida en true:
IsActive eq true
También puede escribir esta expresión de filtro sin el operador lógico. En el ejemplo siguiente, Table service también devuelve todas las entidades donde IsActive es true:
IsActive
Para devolver todas las entidades donde IsActive es false, puede usar el operador not
:
not IsActive
Filtrado de propiedades de Fecha y Hora
Para filtrar por un valor DateTime, especifique la palabra clave datetime, seguida de la constante de fecha y hora entre comillas simples. La constante de fecha y hora debe estar en formato UTC combinado, como se describe en Formato de los valores de la propiedad DateTime.
El siguiente ejemplo devuelve las entidades en las que la propiedad CustomerSince es igual a 10 de julio de 2008:
CustomerSince eq datetime'2008-07-10T00:00:00Z'