$lists = DB::table('searches')->orderBy('query', 'DESC')->paginate(15); @foreach ($lists as list) <div> {{$list->name}} </div> @endforeachEscribí esta consulta y muestra:
Manzana Manzana Manzana Manzana Manzana Plátano Plátano Plátano Uvas Uvas Naranja ....
Quiero mostrar solo los nombres de las frutas que tienen un recuento general de ocurrencias superior a 3 (si el recuento> 3 ) que utilicé:
DB::select('SELECT query, count(*) as count FROM searches GROUP BY query HAVING count > 3'); pero en el archivo de vista no puedo contar por $lists->count()
Error: llamar a una función miembro count () en una matriz
Quiero mi salida como: Apple Banana ... and $lists->count() como 2
Dado que Orange y Grapes cuentan < 3, no se incluirán en la salida.
No estoy seguro de entender qué es exactamente lo que quieres, pero supongo que querrás usar GROUP BY y HAVING
SELECT name, count(*) FROM fruits WHERE ... GROUP BY name HAVING count(*) > 3Esta consulta contará el número de registros del mismo nombre, pero solo si el recuento es mayor que 3-
Puede obtener registros usando selectRaw y havingRaw
DB::table('searches')->selectRaw('query,count(*) as count')->groupBy('query')->havingRaw('count(*) > 3')->orderBy('query', 'DESC')->paginate(15);Esta consulta generará 15 registros de salida ( como se define en paginar (15) ) cuando el recuento de valores sea MAYOR que 3.
usando ->simplePaginate()