Как реализовать мой SQL-оператор в Laravel?

У меня есть следующий запрос MySQL, который работает нормально. Он возвращает случайные результаты из моей таблицы.

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;

Вот мой стол:

+-------------+------+
|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 |
+-------------+------|

Ожидаемые случайные результаты:

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

Оператор sql, как упомянуто, прекрасно работает в MySQL, но я хочу реализовать его в моей среде Laravel.

Мой вопрос: Как мне реализовать этот SQL-оператор в Laravel?

Ответы на вопрос(1)

Ваш ответ на вопрос