Usar una combinación externa izquierda en QueryExpression para consultar filas "not in"
Puede usar una combinación externa izquierda mediante el uso de la clase QueryExpression para realizar una consulta que filtra la tabla combinada, por ejemplo, para buscar todos los contactos que no tuvieron ninguna actividad de campaña en los últimos dos meses. Otro uso común de este tipo de una consulta es buscar las filas de tabla (registros) que "no están en" un conjunto, como en estos casos:
- Buscar todos los clientes potenciales que no tienen ninguna tarea
- Buscar todas las cuentas que no tienen ningún contacto
- Buscar todos los clientes potenciales que tienen una o varias tareas
Una combinación externa izquierda devuelve todas las filas que satisfacen la combinación de la primera entrada con la segunda entrada. También devuelve las filas de la primera entrada que no tenían ninguna fila coincidente en la segunda entrada. Las filas no coincidentes de la segunda entrada se devuelven como valores nulos.
Para realizar una combinación externa izquierda en QueryExpression
, puede usar la columna entityname
como un operador de condición. La columna entityname
es válida en condiciones, filtros y filtros anidados.
Buscar todos los clientes potenciales que no tienen tareas, mediante el uso de un alias
El siguiente ejemplo muestra cómo crear esta consulta:
QueryExpression qx = new QueryExpression("lead");
qx.ColumnSet.AddColumn("subject");
LinkEntity link = qx.AddLink("task", "leadid", "regardingobjectid", JoinOperator.LeftOuter);
link.Columns.AddColumn("subject");
link.EntityAlias = "tsk";
qx.Criteria = new FilterExpression();
qx.Criteria.AddCondition("tsk", "activityid", ConditionOperator.Null);
Esto equivale al código SQL siguiente.
SELECT lead.FullName
FROM Leads as lead
LEFT OUTER JOIN Tasks as ab
ON (lead.leadId = ab.RegardingObjectId)
WHERE ab.RegardingObjectId is null
Consulte también
Crear consultas con QueryExpression
Usar la clase QueryExpression
Usar la clase QueryByAttribute
Nota
¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)
La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).