¿Cómo implementar mi declaración sql en Laravel?
Tengo la siguiente consulta MySQL que funciona bien. Devuelve resultados aleatorios de mi tabla.
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;
Aquí está mi mesa:
+-------------+------+
|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 |
+-------------+------|
Resultados aleatorios esperados:
+-------------+------+
|utilizador_id|nome |
+-------------+------|
| 1 |test2 |
| 1 |test5 |
| 2 |test1 |
| 2 |test2 |
| 3 |test1 |
| 3 |test3 |
+-------------+------|
La instrucción sql como mención funciona bien en MySQL pero quiero implementarla en mi entorno Laravel.
Mi pregunta: ¿Cómo implemento esta declaración SQL en Laravel?