Intrebari de baza despre relatia SOQL – Blogul dezvoltatorilor Salesforce

Dezvoltatorii trebuie adesea sa raspunda la intrebari precum „Cine sunt toate persoanele de contact pentru fiecare cont?” Acestea conduc de obicei la intrebari mai complexe, cum ar fi „Cand am vizitat ultima data contactele cheie din cele mai importante conturi generatoare de venituri si pe cine am vizitat?”

Intelegerea relatiilor SOQL si modul de interogare a acestora va poate ajuta sa raspundeti la aceste intrebari in cod. Astazi va voi arata trei exemple primare. Puteti citi intotdeauna mai multe detalii in ghidul SOQL API. curve din arad Pentru interogarile folosite in aceasta postare, voi folosi obiecte Cont si Contact. Retineti ca aceleasi principii se aplica atat obiectelor standard, cat si obiectelor personalizate. Toate exemplele pot fi rulate in fila Editor de interogari din Consola pentru dezvoltatori. publi24 matrimoniale ilfov

Daca sunteti familiarizat cu SQL, primul lucru pe care ati putea sa-l faceti este sa va alaturati celor doua tabele si sa rulati o interogare in campurile lor. SOQL accepta acest lucru prin interogari de relatii. Interogarile de relatii, stabilite prin cautarea si campurile de detaliere, permit dezvoltatorilor sa recupereze date prin relatiile parinte-copil si copil-parinte. evenimentul de iasi matrimoniale Interogarile de relatie pot fi bidirectionale: de la un obiect copil care priveste un singur parinte sau de la un obiect parinte care priveste zero sau mai multi copii. Cardinalitatea unei interogari de relatie are un impact mare asupra constructiei SOQL, asa cum vom vedea in curand.

Sa aruncam o privire la o interogare simpla a relatiei. cel mai bun site de matrimoniale Aici raspundem la intrebarea „Care este numele conturilor noastre si care utilizator le detine?”

Interogare de la copil la parinte:

SELECT Nume, Proprietar.Nume DIN Cont

Rezultate

Anterior am afirmat ca cardinalitatea era importanta pentru structura SOQL. Aici ne aflam la copilul care interoga parintele, asa ca folosim campul relatiei „proprietar”, apoi obtinem campul „nume”. curve buzau pret Putem spune Owner.Name deoarece pentru fiecare inregistrare a contului va fi cel mult un proprietar cu un singur nume. Va puteti gandi la campul relatiei ca un fel de pointer la obiectul asociat. curve tineretului Putem apoi folosi acel pointer pentru a accesa campurile obiectului asociat. „Multi” se uita la „unul” care ne permite sa folosim sintaxa anterioara. De asemenea, veti dori sa va amintiti ca puteti sa coborati cu un singur nivel in relatii atunci cand interogati de la parinte la copil si la cinci niveluri in lantul de relatii atunci cand interogati de la un copil la un parinte. blackberry curve 9380

Daca am vrea sa schimbam directia si astfel sa schimbam cardinalitatea? In aceasta interogare raspundem la intrebarea „Cine sunt persoanele de contact pentru fiecare cont?”

Interogare parinte-copil:

SELECT Account.Name, (SELECT Contact.Name FROM contacts) FROM Account

Rezultate:

Observati cum s-a schimbat sintaxa SOQL. curve caciulata Deoarece acum exista zero sau mai multe contacte posibile pentru fiecare cont, nu mai putem folosi campul relatiei pentru a indica un singur cont, asa cum am putea face pentru proprietar in prima noastra interogare. Trebuie sa folosim o selectie imbricata pentru a construi un set de rezultate care contine toate persoanele de contact asociate. Pentru fiecare cont, potrivim toate contactele aferente cu aceasta sintaxa. matrimoniale femei batrane Exista cateva alte lucruri demne de remarcat. In primul rand, folosim numele relatiei „contacte” pentru a ne referi la inregistrarile copilului aferente. In al doilea rand, am prefatat fiecare camp „nume” din interogare cu Cont si contact. dame de companie simpatie Acest lucru nu este necesar, ci o buna practica pentru a elimina ambiguitatea la citirea declaratiei.

Alaturati-va tipului

Daca ati rulat ultima interogare in consola pentru dezvoltatori pe o editie pentru dezvoltatori a Salesforce, probabil ca ati observat ceva interesant. Interogarea a returnat toate inregistrarile contului, indiferent daca au avut sau nu o persoana de contact asociata. tiganci curve Aceasta aduce un punct interesant.



  • curve tg frumos
  • dame de companie din pitesti
  • matrimoniale busteni
  • escorte care accepta cupluri
  • paturi matrimoniale din lemn
  • dame de companie vitan
  • matrimoniale 24 publitim
  • escorte milf bucuresti
  • matrimoniale chat
  • matrimoniale publi 24 suceava
  • curve in cluj
  • matrimoniale publi24 timis
  • si cum se schimba unii in curve
  • escorte oradea forum
  • anuntul 24 matrimoniale
  • escorte italia
  • escorte care inghit sperma
  • jurnalul unei dame de companie online subtitrat
  • curve care se fut cu cai
  • escorte fagaras





In mod implicit, interogarile de relatie se comporta ca o imbinare exterioara. Ce poate face un dezvoltator daca doreste sa creeze si sa se uneasca pe aceste doua obiecte? Urmatorul SOQL va face trucul

Creati o alaturare interioara:

SELECTATI Cont. dame de companie zalau Nume, (SELECTA contact.Nume DIN contacte) DIN Cont WHERE Account.Id IN (SELECT Contact. matrimoniale urziceni accountId FROM Contact)

Rezultate:

Aici, folosim clauza where pentru a se potrivi numai inregistrarilor in care exista AccountId in lista de AccountIds potrivite din Contacte. Deoarece filtram pe un camp indexat, de asemenea, facem interogarea un pic mai rapida. Acesta este, de asemenea, un exemplu de interogare selectiva (a se vedea mai jos). curve tracer circuit

Folosind aceste principii de baza puteti incepe sa creati interogari SOQL mai complexe. Ca exemplu de interogare mai complexa, ne putem referi la a doua intrebare mentionata mai sus: „Cand am vizitat ultima data contactele cheie din cele mai importante conturi generatoare de venituri si pe cine am vizitat?”

Interogare mai complexa:

SELECTIONEAZA task.account. escorte turnu severin name, task.who.name, task. matrimoniale 3xforum activitydate FROM task WHERE task.activitydate <= TODAY AND task.who. curve in bihor type = ‘Contact’ AND task.account.annualrevenue> 150000000 ORDER BY task. escorte orade account.annualrevenue DESC

Am introdus doua campuri in acest exemplu, care nu au fost inca mentionate. . escorte dambovita Acestea sunt campurile polimorfe who.name si who.type. matrimoniale galati femei cauta barbati Campurile polimorfe sunt tipuri de campuri speciale care pot indica diferite obiecte in functie de tipul de relatie. Voi avea mai multe de spus despre interogari polimorfe, interogari selective si interogari agregate in urmatoarele postari. De asemenea, retineti ca puteti utiliza functii de data dinamica ca parte a SOQL-ului dvs. In aceasta ultima interogare am folosit TODAY ca parte a criteriilor de filtrare.

Daca ati fost nedumerit sau frustrat de intelegerea modului in care functioneaza interogarile de relatii pe platforma, speram ca acum veti intelege mai bine cum functioneaza acestea. Le voi explora si cateva modalitati interesante de a le putea folosi in viitoarele postari de blog, asa ca ramaneti la curent.