Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SQL subquery problem #1168

Closed
Reztory opened this issue Jun 7, 2023 · 1 comment
Closed

SQL subquery problem #1168

Reztory opened this issue Jun 7, 2023 · 1 comment

Comments

@Reztory
Copy link

Reztory commented Jun 7, 2023

Hola, buen día.

Me gustaría saber si es posible eliminar una subquery que tengo en la siguiente consulta:

Select
a2.x1,
a2.x2
..,
(select sum(a4.GE) from #tbA4 as a4 where a4.date between a2.Fdate and a2.Edate and a2.x1 = a4.x1) AS GE
from #tbA2 AS a2
left join #tbA4 as A4 on a2.x1 = a4.x1

La subquery suma el valor de GE de la tabla A4 con la condición de que la columna A4date que es una columna en formato DATE, se encuentre delimitada entre 2 fechas, una inicial y una final.

Las formas en las que he tratado de darle solución y quitar dicha subquery es por creando una tabla temporal que contenga la suma agregada de la tabla #tbA4, pero al relacionarla por medio de cualquier join, no consigo que el resultado final de la subquery sea la misma.

Informacion adicional de la tabla #tbA4:
Es una tabla que contiene las siguientes columnas:
DATE, x1 (ID), GE(int). La relacion se hace por medio de x1, que es el id que existe en ambas tablas.

De antemano gracias por leer y ayudar.

@YeshuSQL
Copy link

select
a2.x1,
a2.x2,
sum(a4.GE) as GE
from #tbA2 as a2
left join #tbA4 AS a4 on a2.x1 = a4.x1 and a4.date between a2.Fdate and a2.Edate
group by a2.x1, a2.x2

@Reztory Reztory closed this as completed Dec 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants