SUM() e subritração de valores numa mesma tabela
Olá pessoal, estou tentando fazer a seguinte consulta.
"SELECT user_id, (SELECT SUM(extrato_pontos) AS Saldo_Positivo FROM afiliados_extratos WHERE extrato_tipo = 'C') - (SELECT SUM(extrato_pontos) AS Saldo_Negativo FROM afiliados_extratos WHERE extrato_tipo = 'D') AS Saldo_Final FROM afiliados_extratos"
Da seguinte tabela:
CREATE TABLE `afiliados_extratos` (
`extrato_id` int(11) NOT NULL auto_increment,
`user_id` int(11) default NULL,
`sistema_user_id` int(11) default NULL,
`extrato_valor` double(10,2) default NULL,
`extrato_pontos` double(10,2) default NULL,
`extrato_data` datetime default NULL,
`extrato_tipo` varchar(255) default NULL COMMENT 'Crédito ou Debito?',
`extrato_descricao` varchar(255) default NULL,
`extrato_cupom_fiscal` varchar(255) default NULL,
`extrato_vendedor` varchar(255) default NULL,
`extrato_cliente` varchar(255) default NULL,
PRIMARY KEY (`extrato_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
O que estou querendo retornar? O saldo positivo do afiliado - saldo negativo, para depois colocar em ordem de maior pontuação, tipo uma lista top 10 com mais pontos. E isso não esta dando muito certo da forma que estou tentando fazer. Alguém pode me orientar nesta questão?
Discussão (2)
Carregando comentários...