Md. Tarek Reza
Md. Tarek Reza

Reputation: 11

How do I filter my DB query results to not display any duplicate value

I have a query like this:

$blog = BlogModel::select('user_id')->get();

and it return this

[{"user_id":2},{"user_id":3},{"user_id":4},{"user_id":4},{"user_id":6}]

I would like Delete duplicate user_id like this

[{"user_id":2},{"user_id":3},{"user_id":4},{"user_id":6}]

Upvotes: 0

Views: 40

Answers (3)

You can use distinct() to force the query to return distinct results.

Try change this:

$blog = BlogModel::select('user_id')->get();

To:

$blog = BlogModel::select('user_id')->distinct()->get();

You can read more here: https://laravel.com/docs/9.x/queries

Upvotes: 1

Rabie
Rabie

Reputation: 52

$blog = BlogModel::selectRaw('distinct user_id')->get();

Upvotes: 0

nbk
nbk

Reputation: 49375

You can use DISTINCT for that purpose

$blog = BlogModel::select('user_id')->distinct()->get();

Upvotes: 2

Related Questions