none
Ayuda con consulta, mostrar ultima fecha, tabla detalles RRS feed

  • Pregunta

  • Hola buenas madrugadas, estoy realizando un pequeño sistema de alquiler de vídeo juegos, pero hay una consulta que deseo hacer en mis tablas relacionadas, que les paso a mostrar, yo deseo agregar una ultima columna que se llame ultima fecha en que se alquilo ese vídeo juego (al lado de NAlquiladas), como pueden apreciar el objetivo de dicha consulta es listar la cantidad de veces que una persona alquila el mismo vídeo juego, pero solo deseo que aparezca una vez y al lado la cantidad de veces que alquilo el mismo vídeo juego (eso esta listo) pero al lado quiero mostrar la ultima fecha de la ultima vez que alquilo ese vídeo juego, si hago click en la fechaAlquiler de a vista me aparece las n cantidad de veces que la persona alquilo en diferentes fechas el mismo vídeo juego yo solo deseo que aparezca una sola vez,  en este caso la ultima fecha en que alquilo ese vídeo juego, espero haberme explicado, gracias por ayudarme.

    SELECT     dbo.Cliente.IdCliente, dbo.Cliente.Nombre, dbo.Cliente.Apellido, VideoJuegos_1.DescripcionVideoJuego, TipoVideoJuego_1.DescripcionTipoVideoJuego, 
                          COUNT(ClienteVideoJuegos_1.IdVideoJuego) AS NAlquiladas
    FROM         dbo.Cliente INNER JOIN
                          dbo.ClienteVideoJuegos AS ClienteVideoJuegos_1 ON dbo.Cliente.IdCliente = ClienteVideoJuegos_1.IdCliente INNER JOIN
                          dbo.VideoJuegos AS VideoJuegos_1 ON ClienteVideoJuegos_1.IdVideoJuego = VideoJuegos_1.IdVideoJuego INNER JOIN
                          dbo.TipoVideoJuego AS TipoVideoJuego_1 ON VideoJuegos_1.IdTipoVideoJuego = TipoVideoJuego_1.IdTipoVideoJuego
    GROUP BY dbo.Cliente.IdCliente, dbo.Cliente.Nombre, dbo.Cliente.Apellido, VideoJuegos_1.DescripcionVideoJuego, TipoVideoJuego_1.DescripcionTipoVideoJuego, 
                          ClienteVideoJuegos_1.IdVideoJuego
    HAVING      (dbo.Cliente.IdCliente = 1)


    domingo, 25 de junio de 2017 5:55

Respuestas

  • Recupera el máximo valor del grupo para la columna 'FechaAlquiler'

    SELECT 
        c.IdCliente, c.Nombre, c.Apellido, vj.DescripcionVideoJuego, tvj.DescripcionTipoVideoJuego,
        COUNT(cvj.IdVideoJuego) AS NAlquiladas, MAX(cvj.FechaAlquiler) AS UltimoAlquiler
    FROM 
        dbo.Cliente
        INNER JOIN dbo.ClienteVideoJuegos AS cvj ON c.IdCliente = cvj.IdCliente
        INNER JOIN dbo.VideoJuegos AS vj ON cvj.IdVideoJuego = vj.IdVideoJuego
        INNER JOIN dbo.TipoVideoJuego AS tvj ON vj.IdTipoVideoJuego = tvj.IdTipoVideoJuego
    WHERE
        c.IdCliente = 1
    GROUP BY 
        c.IdCliente, c.Nombre, c.Apellido, vj.DescripcionVideoJuego, tvj.DescripcionTipoVideoJuego;
    GO


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    domingo, 25 de junio de 2017 16:46