Obyektlər arası SOQL sorğusunu necə yazmaq olar (“yuxarı”)

giriş

Obyektlər arası SOQL sorğusu SOQL-də təkmil mövzudur. Obyektlər arasında əlaqələr olduqda bu mövzudan istifadə edirik. Bu, bir-biri ilə əlaqəli olan obyektlər zəncirini sorğulamaq kimi bir şeydir. Biz adətən Salesforce-da bu Cross-Obyekt sorğularından daha çox istifadə edirik ki, tərtibatçılar əlaqəli obyektləri keçməli olsunlar.

Sorğuya başlamazdan əvvəl əvvəlcə əlaqəli obyektləri başa düşmək yaxşı olar. Fərz edək ki, adlanan bir obyektimiz var hesab və bütün işçilərin hesab təfərrüatlarını ehtiva edir. İndi adlanan başqa bir obyektimiz var Əlaqə istinad əsasında yaradılmışdır Hesab. İndi, hesab burada Ana Obyekt və kimi tanınır Əlaqə burada Uşaq Obyekt kimi tanınır. Bu, daxilində olan bütün məlumatlar deməkdir Əlaqə ilə əlaqəli bir şeydir Hesab. Bütün əsas detallı obyektlər də “Valideyn-Uşaq” kateqoriyasına daxildir.

uşaqdan valideynə münasibət

Yuxarı keçid

Burada, Yuxarıya Traversalda biz uşaq obyekti onun əsas obyektinin köməyi ilə sorğulayırıq. Buna görə də bu, uşaq-valideyn münasibətləri kimi tanınır. Ana obyektə istinadı saxlayan münasibətlərin adı xassəsinin köməyi ilə nöqtə qeydindən istifadə edərək sahələri sorğulamaq üçün əsas obyekti seçirik. Bu şəkildə, sorğunun yekun nəticəsinin hər iki obyektdən məlumatların olacağını görə bilərsiniz. Aşağıdakı nümunədə bunun necə işlədiyini görək.
Sintaksis:

SEÇİN , . FROM

misal

SOQL sorğusunun yuxarıya doğru keçidini başa düşmək üçün sadə bir nümunə ilə gedirik

  • ƏLAQƏ LİMİTİNDƏN Ad, Hesab.Ad, Hesab.Telefon SEÇİN 5

Burada hesab ci Əlaqə sorğu ana obyektdir və Əlaqə uşaq obyektidir. Ana obyektdən sahələrə uşaq vasitəsilə zəng etmək üçün yuxarıda göstərildiyi kimi nöqtə qeydindən istifadə edirik. Həmçinin, burada əlaqənin adı əsas obyekt adı, yəni Hesab ilə eynidir.

Buraxılış

İndi bu sorğunu sorğu redaktoruna daxil etdiyiniz zaman çıxış olaraq aşağıdakı nəticəni alırıq...

Obyektlər arası SOQL sorğusu (“yuxarı”)

Izahat

Əlaqə obyektindən sorğuda üç sahə seçdiyimiz üçün çıxışda üç sütun var. Ancaq burada birinci sahədir Əlaqə digər ikisi isə ondandır hesab obyekt. Bunun səbəbi bizdən kəsişməkdir Əlaqə üçün hesab Kontakt Hesabın övladı olduğu üçün nöqtə qeydindən istifadə edən obyekt. Əgər müşahidə etsəniz, biz cəmi 5 qeyd aldıq, çünki biz orada limit qoyduq.

Vacib Qeyd

Eyni şəkildə, biz də mürəkkəb mövzu olan valideyn obyektləri üçün bir zəncir yarada bilərik. Uzatma kimi yenidən nöqtə qeydindən istifadə etməklə, valideynin əsas obyektinə keçə bilərik. Bundan istifadə etməklə siz hər hansı bir obyektdən bir-biri ilə əlaqəli olduqda, lakin bəzi digər obyektlərlə əlaqəli olduqda istənilən sahəni əldə edə bilərsiniz, hər halda, sahələrin yalnız bir-biri ilə əlaqəli olduqda geri alınması tələbiniz var. Bu istifadə vəziyyətində "__c" və "__r" anlayışı şəkilə gəlir. Bunu öyrənmək üçün oxuyun burada.

arayış

https://www.sfdc99.com/2013/06/09/example-how-to-write-a-cross-object-soql-query/

https://www.salesforcetutorial.com/relationship-queries-salesforce/

müəllif


Şərhlər

Cavab yaz

E-poçt ünvanından dərc olunmayacaq. Lazım alanlar qeyd olunur *

Bu sayt spam azaldılması üçün Akismet istifadə edir. Yorumunuzun necə işləndiyini öyrənin.