Laravel relationship or a regular query with LEFT JOIN?

Friends, help me the old head on the shelves properly stowed.
I honestly can't understand the better relationship from a normal request
Here is an example, I have 3 tables:



where type_object_id foreign key table type_objects, type_service_id foreign key table type_service

I need to get a collection in which fields condition type_services.translit='hot'

If you make a simple request here
FROM payment_services 
LEFT JOIN type_objects ON = payment_services.type_object_id
LEFT JOIN type_services ON = payment_services.type_service_id
WHERE type_services.translit='hot'

The output I get all the data I need in abundance.

That's what I got to do with relationships:
class paymentService extends Model
 public static function ads()
 typeService::where('translit', 'hot')->first()->actualAdsPayments();

class typeService extends Model
 public function actualAdsPayments()
 return typeService::hasManyThrough('App\paymentService','App\typeService','id') 

Here, I will not receive all data, in particular I don't get type_objects->translit, that's what I get on output
#original: array:9 [▼
 "id" => 3
 "type_object_id" => 3
 "object_id" => 1592148
 "type_service_id" => 3
 "period" => 7
 "price" => "50.00"
 "updated_at" => "2019-12-12 14:59:31"
 "created_at" => "2019-12-11 22:20:42"
 "laravel_through_key" => 3

fields: price, period, updated_at, created_at from table payment_services, in the beginning they did not describe as meaningless.

According to the rules of the ORM I have to do everything h/h relationship, but for the life of me do not understand why? If the usual request is for me much clearer and easier, and b/s relationships I don't get all needed fields.
Even if you take the classics, "one author and many books," why me, if I can do one query with a LEFT JOIN operators
Just don't send to dock, I read it a few times, but did not understand the usefulness of relations ((
April 3rd 20 at 17:45
2 answers
April 3rd 20 at 17:47
OPM maintains data integrity when handling the modification of the database.
When you select - no difference.
What integrity I know, my database is of type InnoDB and all of the tables I have the primary and foreign keys. As to the integrity of the database is affected by the ORM? It's the same SELECT queries only in different interpretation. He also have inserts where where describes the fields of the table.
Modification of database when changing the version of MySQL with a lower to a higher or when change MySQL to PostgreSQL ?
My colleague more experienced in these matters, said that relations are created for more readable and understandable code. But in General, the more advantages there.
But I justify it as it does not fit in the head, because I plain SQL is much more clear than the relationship. Although I'm starting their beliefs to doubt, after all not simply so invented relationship - Donnell.Luettg commented on April 3rd 20 at 17:50
If there are instances where it is clearly visible to the flexibility or productivity relations in contrast to the usual SELECT, please give. I will read, understand and try. While clearly I do not understand why you need these relationships. - Donnell.Luettg commented on April 3rd 20 at 17:53
@'donnell.Luettg, Examples at hand - no.
Modification of the database - is any change to the data in the DB.
Communication is not always defined within the database.
and all the tables I have the primary and foreign keys
it is important to understand: I have only the key fields or key fields have and when?
Because if there's ORM-level work with the data (php script in this case), then typically links in the database do not, because it's parallel functionality, which is redundant and may lead to violation of the integrity of the data schema due to the fragmented control from the script and links in the database. - Imani57 commented on April 3rd 20 at 17:56
April 3rd 20 at 17:49
In the election of the modification of data occurs, they can easily do it using raw SQL.

Moreover, it is a good practice, entities are not data warehouses, by definition, in principle.

According to the rules of the ORM I have to do everything h/h relationship

There is no such rule.
Just Larabel often projects are done anyhow and in production, and in fact doing everything.

Find more questions by tags Optimization of SQL-queriesLaravel