sexta-feira, 30 de dezembro de 2016

Retirar Zeros a Esquerda com PostgreSQL

Exemplo:

create table funcionarios
(
codigo character varying(10) not null,
nome character varying(100) not null,
salario numeric(15, 2)
);

insert into funcionarios (codigo, nome, salario) values ('000232', 'Zorrilho', 672.40);
insert into funcionarios (codigo, nome, salario) values ('000239', 'Graxaim', 672.40);
insert into funcionarios (codigo, nome, salario) values ('001431', 'Lebre', 1402.46);

select
trim(leading '0' from codigo) as codigo,
nome,
salario
from funcionarios;


sexta-feira, 9 de dezembro de 2016

Listar BUSCAS/SELECTs que já foram feitos a uma tabela.

SELECT sum(seq_scan+idx_scan) AS total_de_leituras
FROM pg_stat_user_tables
WHERE relname=’nome_da_tabela’;

Obs.: Um select com um JOIN considera duas BUSCAS

Lista as tabelas ligadas por chave estrangeira a uma determinada tabela.

SELECT tab_pk.relname AS “tab PK”, tab_fk.relname AS “tab_FK”
FROM pg_class tab_pk
JOIN pg_constraint     ON tab_pk.oid=pg_constraint.confrelid
JOIN pg_class tab_fk  ON pg_constraint.conrelid=tab_fk.oid
and tab_fk.relname=’cliente’;