26th October, 2018
The following table describes about the SOQL and SOSL difference
1. SOQL (Salesforce object Query Language) retrieves The records from the database by using “SELECT” keyword
2. By using SOQL,we can know in which objects or fields the data resides
3. We can retrieve data from single object or from multiple objects that are related to each other4. We can query on only one table
1. SOSL(sales force object search language) retrieves the records from the data base by using “FIND” key word
2. By using SQSL,we don’t know in which object or field the data resides
3. We can retrieve multiple objects and field values efficiently when the objects may or may not be related to each other4. We can query an multiple tables.
-A SOQL query is enclosed between square brackets the following query retrieves an subjects (a record from the database) that has the name field value equal to “Osmania University” Account a = "select Id name FROM account where name = 'Osmania University' " Return type Query (Applicable for only one record) Note:- In the above the “a” variable stores the ID ,Name of all accounts with name=’Osmania University’ Note:- SOQL Statement evaluate to a list of SObjects single SObjects or an integer for count method queries. LIst of SObject à List < Position_c Position = "select name from position_c shwre type_c='part time'"; Single sumbject: Postion_c p="select name from position_c where id='xxxxx'" Integer: Integer i="select countc,from position_c where c type_c='part time'" SOQL Bindings:-Square bracketed queries support binding to Apex variable String jobtype='Full Time'; List<position_c> S="select name from position_c where type_c=:job type;"
Enthusiastic about exploring the skill set of Salesforce? Then, have a look at the blog post to gather additional knowledge on Salesforce Training and Certification.
SOSLà sales force object search language
The folloing exapmle that searches all fields across all account and contact objects. Ex:- LIst<List<Sobject>> searchist="Find 'Text*' IN ALL FIELDS RETURNING Account, Contact Systerm.debug(Serachlist);" This query will search the account and contact records that field values starts with test in all fileds.
LIst<List<Sobject>> searchist=[Find 'map*' IN ALL FIELDS RETURNG Account(ID, Name),contact,opportunity,Lead]; System.debug(searchist); Account(ID, Name)--> this means it returns the account records with ID, name values Note:- If a SOSL query does not return any records for a specified SObject type, the search results include an empty list for that SObject Updated Operation: The update DML operation modifies one or more existing SObject records, DML (update) statement syntax Update SObject; Update Subject[ ]; The following example describes us about an updating an account field through an existing contact that has also been modified here two update statements are required // use a SOQL Query to access data for a contact Contact C=[SELECT Account.Name FROM contact where Last Name ='Anil' LIMIT 1]; C.Account.Name='Capital info Solutions'; C.Lastname='sateesh'; --->The above two statements says that change in fields for both contact and its associated account Upadate C:--> updates the contact. Update C.Account: --> Update the Account. System.Debug(c); System.debug(c.Account.Name);
Access a="select name,Rating,Industry FROM Account Where id='xxxxx';" /*This query retrieves the Name, Rating, Industry fields values of one particular account*/ a.Name='Osmania University'; a.Rating='Hot'; a.Industry='Electrical'; Update a; System debug(a) Note:- Account a ="select name; Phone FROM Account where id='xxxx';" System.debug(a.Industry) No compilation error, but it gives run time error like SObject row was retrieved via SOQL without querying the requested filed.
The delete DML operation deletes one or more existing SObject records, such as individual accounts or contacts, from organization’s data. The DML (Delete) statement syntax is Delete SObject; Delete SObject; The following example is to delete the account record through the API //First get the account record which we want to delete Account a =" select ID from account where name='Osmania University' LIMIT 1;" Delete a;* The DML Operation deletes the above record.*/
Account a =" select name FROM account where name='Osmania University' ALL Rows;" UnDelete a; Note:- Comments:-: - Comments are lines of text that we add to code to describe what it does comments are not executable code. It’s a good practice to annotate code with comments as necessary. Apex has two forms of comments
The following example describes only the debug statement runs: System.debug (‘capital info solutions ‘); //This comment is ignored. /* Hi All, All the Best From capital info solutions */
EX:- Integer Myvar; IntegER MYVAR; --->both are equivalent statements The following statements print out today’s date using the System today method when we execute them in the Developer Console. System.debug(System.today()); System.debug(System.Today()); System.debug(System.TOday()); Note- A good practice is for class names to start with an uppercase letter and method names to start with a lowercase letter.
TekSlate is the best online training provider in delivering world-class IT skills to individuals and corporates from all parts of the globe. We are proven experts in accumulating every need of an IT skills upgrade aspirant and have delivered excellent services. We aim to bring you all the essentials to learn and master new technologies in the market with our articles, blogs, and videos. Build your career success with us, enhancing most in-demand skills .
Write For Us