SQL Server - consulta sql

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

consulta sql

Publicado por fernando (2 intervenciones) el 22/10/2017 18:32:53
Hola me entro una duda con esta consulta,
estas son las tablas:

1
2
3
4
5
6
ciudades(id_Ciud,nom_Ciud)
clientes(id_Cli,nom_Cli,tel_cli,mail_cli,id_Ciud
sucursales(id_Suc,dsc_Suc,obs_Suc)
tipos_cuenta(id_Tipo,dsc_Tipo)
cuentas(id_Cta,id_Cli,id_Suc,id_Tipo,min_Cta)
movimientos(id_Movim,fch_Movim,id_Cta,imp_Movim)

La consulta que se pide es esta,

Para cada Cliente mostrar mediante una consulta SQL sus datos, la cantidad de
movimientos que realizó y el monto promedio movido, si el Cliente no tiene
movimientos igual deben mostrarse sus datos.

Es lo mismo esta consulta:

1
2
3
4
5
6
7
select
cli.*,  count(*) , avg(mov.imp_movim)
from
clientes cli left join cuentas cta
on cli.id_Cli=cta.id_Cli left join movimientos mov on mov.id_Cta=cta.id_Cta
group  by
 cli.id_Cli,nom_Cli,tel_cli,mail_cli,id_Ciud

que esta;

1
2
3
4
5
6
7
8
9
SELECT clientes.nom_Cli,(SELECT COUNT(fch_movim)
FROM movimientos,cuentas
WHERE movimientos.id_Cta=cuentas.id_Cta AND
cuentas.id_Cli=clientes.id_Cli) as cantidad,
(SELECT AVG(imp_movim)
FROM movimientos,cuentas
WHERE movimientos.id_Cta=cuentas.id_Cta AND
cuentas.id_Cli=clientes.id_Cli) as promedio
FROM clientes

Cal seria la correcta?
Gracias por su ayuda!
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 Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

consulta sql

Publicado por Isaias (4558 intervenciones) el 23/10/2017 18:35:56
En lo personal, me gusta mas la primera, ¿le da el resultado esperado?
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