Postagens

Mostrando postagens de Fevereiro, 2017

Curso Firebird SQL 27 - Stored Procedures

Imagem
►► Clique em curtir e ajude a divulgar o meu trabalho ! ◄◄
Stored Procedure é uma coleção de comandos em SQL para otimização de Banco de dados. Encapsular tarefas repetitivas, aceita parâmetros de entrada e retorna um valor de status.

►► Confira os exemplos abaixo: ◄◄
Neste vídeo vamos criar os seguintes procedimentos:

Exemplo 1 - Somar dois valores:
 SET TERM ^ ;

CREATE PROCEDURE SomaValor
 ( nValor1 integer, nValor2 integer )
RETURNS
 ( nTOTAL integer )
AS

BEGIN
  /* write your code here */
  nTOTAL = nValor1 + nValor2;
END^

SET TERM ; ^

Exemplo 2 - Atualizar preço de produto com calculo percentual:
SET TERM ^ ;

CREATE PROCEDURE stAtualizaValor
 ( nCodigo, nPercentual )
AS
BEGIN
  /* write your code here */
  update PRODUTO
  set PRODUTO.PRO_VALOR = PRODUTO.PRO_VALOR + ((PRODUTO.PRO_VALOR * :nPERCENTUAL)/100)
  Where PRODUTO.PRO_CODIGO = :nCODIGO;

END^

SET TERM ; ^

Exemplo 3 - Incluir, Alterar ou Excluir registros:
 SET TERM ^ ;
ALTER PROCEDURE EDTPRODUTO (
    CTIPO varchar(1),
    NCODIGO integer,

Curso Firebird 26 - AVG

Imagem
A função AVG retorna o cálculo médio de valores.

Exemplo:
select i.IPED_PRODUTO as Codigo, p.PRO_NOME as Descricao,
sum(i.IPED_QTDE) as Quantidade,avg( i.IPED_UNITARIO) as Un_Medio,
( sum(i.IPED_QTDE) * avg(i.IPED_UNITARIO)) as Total
from Produto P, ITEMPEDIDO I
where p.PRO_CODIGO = i.IPED_PRODUTO
group by i.IPED_PRODUTO, p.PRO_NOME

Curso Firebird SQL 25 - Sum e Group By

Imagem
Vou mostrar como somar registros  como produtos vendidos, agrupando campos com a cláusula GROUP BY.



select i.IPED_PRODUTO as Codigo, p.PRO_NOME as Descricao,
sum(i.IPED_QTDE) as Quantidade, i.IPED_UNITARIO as Unitario,
sum(i.IPED_QTDE * i.IPED_UNITARIO) as Total
from Produto P, ITEMPEDIDO I
where p.PRO_CODIGO = i.IPED_PRODUTO
group by i.IPED_PRODUTO, p.PRO_NOME, i.IPED_UNITARIO

Curso Firebird SQL 24 - Extract

Imagem
► Ajude a manter este canal no ar, clique em GOSTEI !◄

Neste vídeo vou mostrar como selecionar registros extraindo dias, meses ou anos. exemplo todos clientes nascidos em agosto .. ou todos nascidos em determinado dia e mês...





-- nascidos no mês 08 de qualquer ano ou dia
select *
from cliente
where EXTRACT (Month FROM CLI_DTNAS) = 8;

-- nascidos entre o mes 4 e 8
select *
from cliente
where EXTRACT (Month FROM CLI_DTNAS) between 4 and 8;

-- nascidos no dia 03 do mês 08 de qualquer ano
select *
from cliente
where EXTRACT (Month FROM CLI_DTNAS) = 8
  and EXTRACT (DAY FROM CLI_DTNAS) = 3;


--Exibir nome do cliente e realizar calculo de idade
select CLI_NOME as NOME,
(EXTRACT (Year FROM CURRENT_DATE) - EXTRACT (Year FROM CLI_dtnas)) as Idade
from CLIENTE