Ajuda com SELECT com apelidos

SQL Server

25/01/2015

Boa noite, estou com difculdade simples em criar selects, para falar a verdade perdida mesmo.
estrutura do banco.



CREATE TABLE SETORES(
COD_SETOR INT IDENTITY(1,1) PRIMARY KEY,
DESCRICAO VARCHAR(30)
);

CREATE TABLE PRODUTOS(
COD_PRODUTO INT IDENTITY(1,1) PRIMARY KEY,
COD_SETOR INT,
DESCRICAO VARCHAR(30)
);

CREATE TABLE CLIENTES(
COD_CLIENTE INT IDENTITY(1,1) PRIMARY KEY,
CPF VARCHAR(11),
NOME VARCHAR(60),
ENDERECO VARCHAR(100),
BAIRRO VARCHAR(50),
TELEFONE INT
);

CREATE TABLE VENDAS (
COD_VENDA INT IDENTITY(1,1) PRIMARY KEY,
COD_CLIENTE INT,
DATA_VENDA DATETIME,
VALOR_TOTAL FLOAT
);

CREATE TABLE VENDA_ITENS (
COD_VENDA_ITENS INT IDENTITY(1,1) PRIMARY KEY,
COD_VENDA INT,
COD_PRODUTO INT,
QTD FLOAT,
VL_UNIT FLOAT,
SUBTOTAL FLOAT
);



Quero fazer uma consulta de produtos pelo setor. alguem pode me ajudar a iniciar?
Marilia Silva

Marilia Silva

Curtidas 0

Respostas

Marisiana Battistella

Marisiana Battistella

25/01/2015

Para selecionar os produtos agrupando por setor:
select s.descricao as setor,
                    p.descricao as produto
from produtos p
inner join setores s
on p.cod_setor = s.cod_setor
group by s.descricao,
               p.descricao
order by s.descricao, 
              p.descricao 
GOSTEI 0
Marisiana Battistella

Marisiana Battistella

25/01/2015

Para selecionar os produtos filtrando por setor basta incluir a claúsula WHERE e definir o filtro. Ex.:
select s.descricao as setor,
                    p.descricao as produto
from produtos p
inner join setores s
on p.cod_setor = s.cod_setor
where s.cod_setor = 1
group by s.descricao,
               p.descricao
order by s.descricao, 
              p.descricao 
GOSTEI 0
Marilia Silva

Marilia Silva

25/01/2015

O primeiro deu certo, apresentou os dados, porem o segundo mostra apenas os campos.
GOSTEI 0
Marisiana Battistella

Marisiana Battistella

25/01/2015

O segundo vc tem que informar um código de setor que esteja cadastrado na tabela de setores e que possua produtos vinculados.
where s.cod_setor = 1 
GOSTEI 0
Marilia Silva

Marilia Silva

25/01/2015

Sim, mas não trouxe nenhum dado. zerado mesmo.
GOSTEI 0
Marilia Silva

Marilia Silva

25/01/2015

Mariasiana, boa tarde, mais algumas questões que ainda estou com duvida.

nesse trecho

s.descricao as setor,


s.descricao é o setor, mas ele puxa todos os campos?


posso continuar com essa mesma logicas para as seleções abaixo?

- consultar produtos por venda
- consultar venda por cliente
- consultar produto por cliente
- consultar venda por setor
GOSTEI 0
Thiago Cruz

Thiago Cruz

25/01/2015

S.descricao vem sim da tabela setores e voce caso tenha nessecidade pode colocar outras colunas da tabela setores basta colocar s.NomedaColuna.
GOSTEI 0
Marilia Silva

Marilia Silva

25/01/2015

Obrigada Thiago, pode me ajudar com os outros?
GOSTEI 0
Marilia Silva

Marilia Silva

25/01/2015

Pessoal, preciso de auxilio com os outros.
GOSTEI 0
Marisiana Battistella

Marisiana Battistella

25/01/2015

Marilia, você conseguiu entender o código que eu postei?
Executou ele para ver como os dados são retornados e para entender o que a instrução está fazendo?
GOSTEI 0
Marilia Silva

Marilia Silva

25/01/2015

Entendi o primeiro que postou.
GOSTEI 0
Marilia Silva

Marilia Silva

25/01/2015

Entendi o primeiro que postou.
GOSTEI 0
Marisiana Battistella

Marisiana Battistella

25/01/2015

O segundo é igual ao primeiro, com a diferença de que ele permite que você informe um código de setor para que o SELECT retorne apenas as informações referentes àquele setor.
GOSTEI 0
Marilia Silva

Marilia Silva

25/01/2015

Depois que entendi melhor, estava analisando o código. obrigada.
GOSTEI 0
Marisiana Battistella

Marisiana Battistella

25/01/2015

Por nada Marilia!!
GOSTEI 0
POSTAR