vistas vista plantillas index for entre diferencias descargar crear content ciclo agregar laravel laravel-4 eloquent

vista - Laravel 4: une la tabla pero solo la última fila



foreach laravel controller (2)

Puede usar la función MAX procesar. Suponiendo que su fecha se almacena Responses.date , el código se verá así

$quotes = Quote::select(''Quotes.*'', DB::raw(''COUNT(Responses.id) as total_responses''), DB::raw(''MAX(CAST(Responses.date AS CHAR)) as latest'') ) ->leftjoin(''Responses'', function($join) { $join->on(''Responses.quote_id'', ''='', ''Quotes.id'') ->where(''Responses.state'', ''!='', ''0''); }) ->groupby(''Quotes.id'');

Primero tiene que ser lanzado como un char debido a un error mysql https://bugs.mysql.com/bug.php?id=54784

Tengo 2 tablas: citas, respuestas.

En una tabla de datos, muestro comillas, y para cada fila, muestro un conteo de respuestas en la columna. Ahora quiero mostrar la fecha de la última respuesta, pero estoy bloqueado :(

Aquí está mi código:

$quotes = Quote::select(''Quotes.*'', DB::raw(''COUNT(Responses.id) as total_responses'') ) ->leftjoin(''Responses'', function($join) { $join->on(''Responses.quote_id'', ''='', ''Quotes.id'') ->where(''Responses.state'', ''!='', ''0''); }) ->groupby(''Quotes.id'');

¿Es posible agregar otra combinación a la izquierda con la misma tabla, con consulta personalizada para seleccionar solo la última fila?

Gracias por ayudar


Lo que necesita es incluir Responses.created_at en su comando de selección y filtrarlo usando la misma columna. es decir

$quotes = Quote::select(''Quotes.*'', ''Responses.created_at as last_response_date'', DB::raw(''COUNT(Responses.id) as total_responses'')) ->leftjoin(''Responses'', function($join) { $join->on(''Responses.quote_id'', ''='', ''Quotes.id'') ->where(''Responses.state'', ''!='', ''0''); }) ->groupby(''Quotes.id'')->orderBy(''Responses.created_at'', ''desc'');