Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE TABLE IF NOT EXISTS operacao (
- id INTEGER PRIMARY KEY AUTOINCREMENT,
- cod_acao TEXT NOT NULL,
- qtd INTEGER NOT NULL,
- preco INTEGER NOT NULL,
- taxas INTEGER,
- data TEXT NOT NULL,
- tipo_ordem BIT NOT NULL --1 COMPRA - 0 VENDA
- )
- INSERT INTO operacao ( cod_acao, qtd, preco, taxas, data, tipo_ordem) values
- ('CSNA3', 100, 1645, 0, '2019-06-30', '1'),
- ('CSNA3', 100, 1630, 0, '2019-07-01', '1'),
- ('CSNA3', 100, 1650, 0, '2019-07-02', '0'),
- ('ITUB4', 100, 3650, 0, '2019-07-04', '1'),
- ('ITUB4', 100, 3660, 0, '2019-07-10', '0'),
- ('VVAR3', 100, 600, 0, '2019-07-04', '1'),
- ('VVAR3', 100, 650, 0, '2019-07-11', '0'),
- ('CIEL3', 200, 660, 0, '2019-07-15', '1'),
- ('CIEL3', 100, 705, 0, '2019-07-20', '0'),
- ('GGBR4', 200, 1510, 0, '2019-07-15', '1'),
- ('GGBR4', 100, 1525, 0, '2019-07-18', '1'),
- ('GGBR4', 100, 1550, 0, '2019-07-20', '0'),
- ('ABEV3', 100, 1850, 0, '2019-07-25', '1'),
- ('ABEV3', 100, 1866, 0, '2019-07-26', '1'),
- ('ABEV3', 100, 1780, 0, '2019-07-28', '0'),
- ('GRND3', 100, 750, 0, '2019-07-18', '1'),
- ('GRND3', 100, 730, 0, '2019-07-18', '1'),
- ('GRND3', 100, 766, 0, '2019-07-28', '0')
- --test data format
- select id, cod_acao, strftime('%d/%m/%Y', data, 'localtime') as 'data op' from operacao order by data asc
- --selecione todas operaçoes do mes atual "do ano"
- select * from operacao where strftime('%Y%m', 'now', 'localtime') = strftime('%Y%m', data)
- --selecione todas acoes do mes passado
- select * from operacao where strftime('%Y%m', 'now', 'localtime', '-1 month') = strftime('%Y%m', data)
- --Total R$ em ativos em carteira
- select sum(preco) as 'Ativos' from operacao where tipo_ordem = 1
- --preço medio de cada ativo comprado
- --lucro do mes em R$
- select from operacao where strftime('%Y%m', 'now', 'localtime') = strftime('%Y%m', data)
- --lucro total do mes em %
- --lucro de cada acao vendida no mes
- --total vendido deste mes ate agora
- --total vendido de X data ate Y data
- --total comprado de X data até Y data
- select strftime('%d-%m-%Y', 'now', 'localtime');
- SELECT DATE('now', 'start of month');
- SELECT date('now','localtime', 'start of month');
- select date('now')
- SELECT date('now','-1 day');
- DELETE FROM operacao
- SELECT * FROM operacao
- /*
- Nunca usar pontos flutuantes para valores monetários (real, double, float).
- A representação desses valores segue o padrão IEEE_754 e foram projetados exclusivamente para aplicações científicas.
- Aplicações financeiras exigem precisão absoluta pois em um sistema de contabilidade, por exemplo, não pode ser tolerado nenhuma diferença num saldo, mesmo que seja de poucos centavos em Bilhões de Reais, pois causa desconfiança que causaria no sistema (dando a impressão de existencia de erro).
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement