In Laravel, the distinct() method is used to fetch distinct records from the database, it is also part of Laravel query builder, which means it can be chained to other query builder methods as well.
The typical usage of this method is to find how many users made comments on a post. Since users can make more than one comment, it can be helpful to get the distinct number of users that commented.
$users = DB::table('tablename')->distinct()->get();
This method does not take any parameters.
The yourController.php file shows how the distinct() method is used. To see the result, click on the “Output” tab in the executable code below.
APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:y/pKeSS3Dw2DF8SSju5xWAZ0BNvTWnit4coXi271A/U=
APP_DEBUG=true
APP_URL=http://localhost
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=educative1
DB_USERNAME=user
DB_PASSWORD=user
BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=null
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"users table.distinct() method to the table() method. Next, we use the get() method to retrieve the results of the query. We print all the distinct emails in the table as output.