Wie implementiere ich meine SQL-Anweisung in Laravel?

Ich habe die folgende MySQL-Abfrage, die gut funktioniert. Es werden zufällige Ergebnisse von meiner Tabelle zurückgegeben.

SET @prev=0,@rownum=0;
SELECT utilizador_id, nome 
FROM (
  SELECT *, 
         IF( @prev <> utilizador_id, 
             @rownum := 1, 
             @rownum := @rownum+1 
         ) AS rank, 
         @prev := utilizador_id, 
         @rownum  
  FROM (
    SELECT * FROM anuncios 
    ORDER BY utilizador_id, rand()
  ) AS random_ads
) AS ads_ranked 
WHERE rank <= 2;

Hier ist mein Tisch:

+-------------+------+
|utilizador_id|nome  |
+-------------+------|
|     1       |test1 |
|     1       |test2 |
|     1       |test3 |
|     1       |test4 |
|     1       |test5 |
|     2       |test1 |
|     2       |test2 |
|     2       |test3 |
|     3       |test1 |
|     3       |test2 |
|     3       |test3 |
+-------------+------|

Erwartete zufällige Ergebnisse:

+-------------+------+
|utilizador_id|nome  |
+-------------+------|
|     1       |test2 |
|     1       |test5 |
|     2       |test1 |
|     2       |test2 |
|     3       |test1 |
|     3       |test3 |
+-------------+------|

Die erwähnte SQL-Anweisung funktioniert in MySQL einwandfrei, ich möchte sie jedoch in meiner Laravel-Umgebung implementieren.

Meine Frage Wie implementiere ich diese SQL-Anweisung in Laravel?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage