SQL Server - Crear vista para obtener la suma de varias consultas

 
Vista:
sin imagen de perfil
Val: 1
Ha disminuido su posición en 18 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Crear vista para obtener la suma de varias consultas

Publicado por Jesús (1 intervención) el 07/01/2019 23:41:59
Buenas tardes soy nuevo aprendiendo sql server y por lo tanto tengo muchas dudas, una que se me presenta es que en access podia hacer calculos con dos tablas que no tuvieran relacion, es decir verificaba si variascolumnas de la primera tabla cumpliera con unas condiciones especificas y de ser cierto me diera el monto de la segunda tabla para cada caso y de no ser asi diera cero, por ejemplo verificaba si un empleado que tiene hasta 4 hijos con edad entre 0 y 18 años, en los casos de que tuviera me diera un bono y en los que no tenga me de cero para luego sumar los 4 montos y obtener un bono total, aca esta el codigo en sql de access:

SELECT DATO1.CI, IIf([HIJO1]<>"",IIf(Int((Date()-[FNAC1])/365.25)<=18,[MONTOB],0),0) AS P1, IIf([HIJO2]<>"",IIf(Int((Date()-[FNAC2])/365.25)<=18,[MONTOB],0),0) AS P2, IIf([HIJO3]<>"",IIf(Int((Date()-[FNAC3])/365.25)<=18,[MONTOB],0),0) AS P3, IIf([HIJO4]<>"",IIf(Int((Date()-[FNAC4])/365.25)<=18,[MONTOB],0),0) AS P4, NZ([P1],0)+NZ([P2],0)+NZ([P3],0)+NZ([P4],0) AS SPH
FROM DATO1, PHIJO;

Ahora el inconveniente es que no se como hacer en sql server esto, si puedo calcular una de las condiciones pero las demas no se como hacerlo, aca esta el codigo como lo hice:

SELECT dbo.DATO1.CI, dbo.DATO1.HIJO1, dbo.PHIJO.MONTOB
FROM dbo.DATO1 CROSS JOIN
dbo.PHIJO
WHERE (dbo.DATO1.HIJO1 IS NOT NULL AND FLOOR((CAST(CONVERT(varchar(8), GETDATE(), 112) AS int) - CAST(CONVERT(varchar(8), dbo.DATO1.FNAC1, 112) AS int)) / 10000)
<= 18)

Si alguien me puede orientar de como poder realizar esto se lo agradeceria ya que llevo tiempo buscando una solución y no logro verlo, gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Plutarco
Val: 125
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Crear vista para obtener la suma de varias consultas

Publicado por Plutarco (46 intervenciones) el 17/01/2019 19:27:38
Hola

La realidad es bastante enredada tu pregunta, además que el SQL de Access no es igual al SQL Server en muchas cosas, pero mira, si lo que quieres es hacer operaciones antes que te arroje resultados puedes hacer una función que te regrese valores de tabla y despues hacer tu vista para que te devuelva los datos de esa función.

No se si fui claro

Salud2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar