sql server - SQL query to show customers those accounts have 10 deposits or more in his account -
i have huge doubt have make query show customers made more 10 deposits greater or equal 50,000 in period, not leave me , i'm sure script wrong:
the consult need is: make query accounts client name. accounts have had more 10 deposit greater or equal $ 50,000.00 january 2016 date amount.
here script:
declare @nombrecliente varchar(100) declare @apellidocliente varchar(100) declare @cantidadcuenta int declare @sumamonto decimal declare @fechainicio varchar(10) set @nombrecliente = 'name' set @apellidocliente = 'lastname' set @cantidadcuenta = ( select count(b.clienteid) [dbo].[clientes] inner join [dbo].[cuentasbancarias] b on a.clienteid = b.clienteid a.nombre = @nombrecliente , a.apellidos = @apellidocliente ) select @cantidadcuenta if @cantidadcuenta >= 10 begin set @sumamonto = ( select sum(a.monto) [dbo].[depositos] inner join [dbo].[cuentasbancarias] b on a.cuentaid = b.cuentaid inner join [dbo].[clientes] c on b.clienteid = c.clienteid c.nombre = @nombrecliente , c.apellidos = @apellidocliente , a.fechamovimiento >= '2016-02-01' , a.fechamovimiento <= getdate() ) select @sumamonto select @cantidadcuenta if @sumamonto >= 50000 begin select * [dbo].[clientes] inner join [dbo].[cuentasbancarias] b on a.clienteid = b.clienteid a.nombre = @nombrecliente , a.apellidos = @apellidocliente end if @sumamonto < 50000 begin raiserror('no hay clientes con un monto superior $50,000.00',16,1) end end if @cantidadcuenta < 10 begin raiserror('no hay clientes con más de 10 cuentas',16,1) end
there way solve case ?? here tables in order:
1) [dbo].[clientes] 2) [dbo].[cuentasbancarias] 3) [dbo].[depositos]
this?
select c.clienteid, sum(a.monto) [dbo].[depositos] inner join [dbo].[cuentasbancarias] b on a.cuentaid = b.cuentaid inner join [dbo].[clientes] c on b.clienteid = c.clienteid a.fechamovimiento >= '2016-02-01' , a.fechamovimiento <= getdate() , a.monto >= 50000 group c.clienteid having count(a.id) > 10
Comments
Post a Comment