Verwenden eines linken äußeren Joins in QueryExpression zur Abfrage von Zeilen, die „nicht in“ sind
Sei können eine linke äußere Verknüpfung verwenden, indem Sie mit der QueryExpression-Klasse eine Abfrage ausführen, in der die Verknüpfungstabelle gefiltert wird, z. B. zum Suchen aller Kontakte, die in den letzten beiden Monaten keine Kampagnenaktivität hatten. Eine weitere allgemeine Verwendung dieses Abfragetyps ist die Suche nach Tabellenzeilen (Datensätzen), die „nicht in“ sind, wie in folgenden Fällen:
- Suchen aller Leads, die über keine Tasks verfügen.
- Suchen aller Firmen, die über keine Kontakte verfügen
- Suchen aller Leads, die mindestens eine Task verfügen.
Eine linke äußere Verknüpfung gibt jede Zeile zurück, die der Verknüpfung der ersten Eingabe mit der zweiten Eingabe entspricht. Es werden auch alle Zeilen aus der ersten Eingabe zurückgegeben, die in der zweiten Eingabe keine Übereinstimmung haben. Die nicht übereinstimmenden Zeilen in der zweiten Eingabe werden als Nullwerte zurückgegeben.
Sie können einen linken äußeren Join in QueryExpression
ausführen, indem Sie die Spalte entityname
als Bedingungsoperator verwenden. Die Spalte entityname
ist in Bedingungen, Filtern und verschachtelten Filtern gültig.
Suchen aller Leads, die keine Aufgaben haben, mithilfe eines Alias
Im folgenden Beispiel wird gezeigt, wie diese Abfrage aufgebaut ist:
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);
Dies ist äquivalent zu folgendem SQL:
SELECT lead.FullName
FROM Leads as lead
LEFT OUTER JOIN Tasks as ab
ON (lead.leadId = ab.RegardingObjectId)
WHERE ab.RegardingObjectId is null
Siehe auch
Erstellen von Abfragen mit QueryExpression
Verwenden der QueryExpression-Klasse
Verwenden der QueryByAttribute-Klasse
Hinweis
Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)
Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).