martes, 26 de noviembre de 2013

En esta consulta se realiza un listado de las ultimas noticias, ya sea por tema o de interés general, ordenado de la mas antigua a la mas reciente. Se recibe un parametro que será la cantidad de noticias que se quiere ver, ademas de los parámetros Id del tema y de manera opcional según el enunciado de la tarea, el nombre del Subtema si se deseara buscar por Tema y Subtema, sino solo se buscaría solo por el Tema siendo este el modo de Buscar de manera General.

Entre los principales componentes de la consulta estan:

Declaración de variables y Variables Tabla:

DECLARE @EdicionesAux TABLE (Id int IDENTITY(1,1), Nombre varchar(100), FechaDesde date, FechaHasta date)

-- Variable tabla con los datos de los Subtemas --
DECLARE @SubTemasNoticias TABLE (Id int IDENTITY(1,1),Tema int, Nombre varchar(100), IdSubtema int)
-- Tiene el Id y contenido de las noticas, despues de filtrarlas por subtema
DECLARE @NoticiasAux TABLE (Id int IDENTITY(1,1), Contenido text, IdNoticia int, Subtema int, Edicion int)
-- Ediciones y sus fechas
DECLARE @EdicionesAux TABLE (Id int IDENTITY(1,1), Nombre varchar(100), FechaDesde date, FechaHasta date)

Llenado de variable tabla:
Insert into @NoticiasAux(Contenido, IdNoticia, Subtema, Edicion)
Select  N.Contenido, N.Id as IdNoticia, N.FKSubTema as NumSubtema, NPE.FKEdicion
from Noticia N, @SubTemasNoticias STN, NoticiaPorEdicion NPE
Where STN.IdSubtema = N.FKSubTema

AND NPE.FKNoticia = N.Id

Obtener informacion de las Variable Tabla:
Select top (@cantidad) N.Contenido,N.IdNoticia, N.Edicion, E.FechaDesde, E.FechaHasta
from @NoticiasAux N, @EdicionesAux E
where N.Edicion = E.Id
Order By E.FechaDesde



Fecha: 26/11/2013
Hora Inicio: 1:30 pm
Hora Finalizada: 4:00 pm
Tiempo Laborado:  2 horas y 30 minutos

No hay comentarios:

Publicar un comentario