How to use the Eloquent ORM (Object-Relational Mapping)

Posted by

In Laravel, you can use the Eloquent ORM (Object-Relational Mapping) to interact with your database using a fluent and expressive query builder. The query builder provides a set of methods that allow you to construct and execute database queries in a convenient and efficient manner.

Here are some basic queries commonly used in Laravel, along with examples:

Retrieving All Records:

To retrieve all records from a table, you can use the all method. Here’s an example:

$users = App\Models\User::all();

This query retrieves all records from the users table and assigns them to the $users variable.

Retrieving Specific Columns:

If you only need specific columns from a table, you can use the select method.

Here’s an example:

$users = App\Models\User::select('name', 'email')->get();

This query retrieves the name and email columns from the users table.

Retrieving a Single Record:

To retrieve a single record based on a condition, you can use the where method. Here’s an example:

$user = App\Models\User::where('id', 1)->first();

This query retrieves the user with an id of 1 from the users table.

Retrieving Records with Conditions:

You can add more conditions to your query using the where method.

Here’s an example:

$users = App\Models\User::where('age', '>', 18)
                ->where('gender', 'female')
                ->get();

This query retrieves all female users over the age of 18 from the users table.

Ordering Records:

To order records based on a specific column, you can use the orderBy method.

Here’s an example:

$users = App\Models\User::orderBy('name', 'asc')->get();

This query retrieves all users from the users table and orders them in ascending order based on the name column.

Counting Records:

To count the number of records that match certain conditions, you can use the count method. Here’s an example:

$count = App\Models\User::where('status', 'active')->count();

This query counts the number of active users in the users table.

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x