by Muhammad Hasnain.
get_recordset_sql will return all the rows and get_records_sql may not do the same case as when it turns the records to object the primary key (Identifier) it uses may be same for more then one records.
Especially in case of joins you will be skipping records if you use get_records_sql