Páginas

terça-feira, 24 de abril de 2012

Banco de Dados - Comandos Básicos


1.Selecionar na tabela pedido as colunas descrição do produto, valor unitário, quantidade de produto e multiplicar as duas coilunas (valor_unitário e quantidade de produto) e agrupando pelas colunas selecionadas.

select desc_produto,
valor_unit_produto,
qtda_prod,
sum (valor_unit_produto*qtda_prod)
from pedido
group by desc_produto, valor_unit_produto, qtda_prod


2. Selecionar na tabela pedido a coluna descrição do produto sem repetir  a descrição e somar a coluna (VALOR_TOTAL_PRODUTO) e agrupar por descrição do produto.

select distinct(desc_produto),
sum(valor_total_produto)
from pedido
group by desc_produto

OU

select distinct(desc_produto),
sum(valor_total_produto)
from pedido
--where desc_produto like ('C%') (MOSTRA ÀQUILO QUE TEM AS INICIAIS REFERENCIADAS
group by desc_produto

3.  Utilize uma sub select para selecionar duas tabelas pedido e cliente, nas colunas (nome cliente, descrição do produto e somar valor total do produto e grupando por nome cliente, descrição do produto e ordenar por código cliente.

SELECT P.COD_CLIENTE, P.DESC_PRODUTO, SUM(VALOR_TOTAL_PRODUTO),
(SELECT DISTINCT(C.NOME_CLIENTE)FROM CLIENTE C
WHERE C.COD_CLIENTE=P.COD_CLIENTE) AS CLIENTE -- CHAMAR TUDO COMO "CLIENTE" DOIS SELECTS DENTRO UM DO OUTRO....
FROM PEDIDO P
GROUP BY P.COD_CLIENTE, P.DESC_PRODUTO  -- AGRUPADO
ORDER BY P.COD_CLIENTE  --- ORDENADO

4. Selecionar na tabela cliente com na condição uf=SP e com limite maior igual a 450,00 e ordenar por nome cliente.

SELECT * FROM CLIENTE
WHERE UF_CLIENTE='SP'
AND VALOR_LIMITE >=450.00
ORDER BY NOME_CLIENTE

SELECT NOME_CLIENTE, UF_CLIENTE, VALOR_LIMITE FROM CLIENTE
WHERE UF_CLIENTE='SP'
AND VALOR_LIMITE >=450.00
ORDER BY NOME_CLIENTE
1- Selecionar na tabela pedido visualizando as colunas (prazo_pedido e desc_produto), com dois prazos de pedido para 30 dias e 45 dias.

R: select prazo_pedido, desc_produto from pedido
                where (prazo_pedido = 30
                or prazo_pedido = 45)

5. Conte na tabela pedido quantos (TENIS ADIDAS TT PLUS BRANCO/AZUL 39) tem.

R: select count (*) from pedido
                where desc_produto like ('TENIS ADIDAS TT PLUS BRANCO/AZUL 39%')

6. Na tabela produto alterar o preço do produto (CAMISETA ACOSTAMENTO GOLA CARECA P) para 29,90.

R: update produto set valor_produto = 29.90
                where cod_produto = 4

7. Selecionar duas tabelas cliente (C) e pedido (P)  visualizando as colunas (nome_cliente,e sexo_cliente ), da tabela cliente e agrupe por nome_cliente, sexo_cliente com a condição sexo =F.

R: Select distinct (c.nome_cliente) as nome,
                               c.sexo_cliente as sexo
                               from clientec, pedido p
                               where c.cod_cliente = p.cod_cliente
                               and c.sexo_cliente = 'F'
                               group by c.nome_cliente, c.sexo_cliente

8. Selecione na tabela cliente as data de nascimento maior igual 01/01/1970 até 01/01/2000, visualizando as colunas (nome_cliente e sexo_cliente ).

R: select nome_cliente, sexo_cliente from cliente
                where (data_nas_cliente >= '01/01/1970'
                and data_nas_cliente <= '01/01/2000')

9. Fazer a multiplicação das colunas (valor_unit_produto e qtda_prod) e multiplicar por 2, visualizando as colunas(desc_produto e Multiplicação)
agrupando por (desc_produto).

R: Select desc_produto,
                sum((valor_unit_produto * qtda_prod) *2.0) as mult_2
                from pedido
                group by desc_produto
10. Selecione 3 tabelas Cidade (I), Cliente (C), Pedido (P), visualizar as colunas Nome_Cidade, UF_Cidade, Nome_Cliente, Cod_Pedido, Desc_Pedido, Valor_Unit_Produto, fazer a mutiplicação das duas colunas Valor_Unitario_Produto e Qutda_Produto chamando de soma.

Select i. Nome_Cidade as Cidade,
i.UF_Cidade as UF,
p.Cod_Pedido as Pedido,
p.Desc_Produto as Unitario,
p.Valor_Unit_Produto as Unitario,
Sum (p.Valor_Unit_Produto * p.Qutda_Prod) as

11. Selecionar na tabela pedido qual o produto mais pedido pelos clientes.

Select Max (Qtda_Produto) as quantidade,
Desc_Produto as Produto
From Pedido
Group by Desc_Produto
order by Max (Qutda_Produto) Desc
_____________________________________________________________________________

12. Utilize um sub select para selecionar duas tabelas pedido e cliente, nas colunas (Nome_Cliente, Descrição_do_Produto e somar Valor Total do Produto com a condição, achar todas as CALÇA TNG JEANS MASC% e agrupando por nome Cliente, Descrição do Produto e ordenar por código Cliente.

Select p.Cod_Cliente as Cliente,
p.Desc_Prod as Produto,
Sum (p.Valor_Total_Produto) as Soma
(Select ditinct (c.Nome_Cliente) from Cliente .C
Where (Cod_Cliente = P Cod_Cliente) as Cliente
from Pedido P
Where P Desc_Produto like ('CALÇA TNG JEANS MASC%')
Group by P Cod_Cliente, P.Desc_Prod,
order by P.Cod_Cliente

_____________________________________________________________________________
13. Criar uma seqüência chamado Cod_Cliente_Seq, da tabela Cliente iniciando pela seqüência 8 e no mínimo 10.000 registros.

Create Sequence Cod_Cliente_Seq
increment 1
MinValue 1
MaxValue 10000
Start 8
Cache 1
Alter table Cliente Owner TO Posterger;

Alter table Cliente alter Columm Cod_Aluno SetDefault Nextval ('Cod_Cliente_Seq'::regclass);



Select  cod_cliente, nome_cliente  from cliente
                Where nome_cliente like (‘REGINALDO%’)
                AND END_CLIENTE LIKE (‘RUA NELSON%’); -> Seleciona nome_cliente chamado REGINALDO% e end_cliente chamado RUA NELSON%. 


Questões em dúvidas

1. Selecionar na tabela cliente com na condição uf=SP e com limite maior igual a 450,00 e ordenar por nome cliente.

SELECT * FROM CLIENTE
WHERE UF_CLIENTE='SP'
AND VALOR_LIMITE >=450.00
ORDER BY NOME_CLIENTE

SELECT NOME_CLIENTE, UF_CLIENTE, VALOR_LIMITE FROM CLIENTE
WHERE UF_CLIENTE='SP'
AND VALOR_LIMITE >=450.00
ORDER BY NOME_CLIENTE


2. Selecionar duas tabelas cliente (C) e pedido (P)  visualizando as colunas (nome_cliente,e sexo_cliente ), da tabela cliente e agrupe por nome_cliente, sexo_cliente com a condição sexo =F.

R: Select distinct (c.nome_cliente) as nome,
                        c.sexo_cliente as sexo
                        from clientec, pedido p
                        where c.cod_cliente = p.cod_cliente
                        and c.sexo_cliente = 'F'
                        group by c.nome_cliente, c.sexo_cliente

3. Utilize um sub select para selecionar duas tabelas pedido e cliente, nas colunas (Nome_Cliente, Descrição_do_Produto e somar Valor Total do Produto com a condição, achar todas as CALÇA TNG JEANS MASC% e agrupando por nome Cliente, Descrição do Produto e ordenar por código Cliente.

Select p.Cod_Cliente as Cliente,
p.Desc_Prod as Produto,
Sum (p.Valor_Total_Produto) as Soma
(Select ditinct (c.Nome_Cliente) from Cliente .C
Where (Cod_Cliente = P Cod_Cliente) as Cliente
from Pedido P
Where P Desc_Produto like ('CALÇA TNG JEANS MASC%')
Group by P Cod_Cliente, P.Desc_Prod,
order by P.Cod_Cliente


Nenhum comentário: