Array
(
)

Ajuda com SELECT com apelidos

Marilia Silva
   - 25 jan 2015

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

Citação:

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?

Marisiana
   - 25 jan 2015

Para selecionar os produtos agrupando por setor:
#Código

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 

Marisiana
   - 25 jan 2015

Para selecionar os produtos filtrando por setor basta incluir a claúsula WHERE e definir o filtro. Ex.:
#Código

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 

Marilia Silva
   - 26 jan 2015

O primeiro deu certo, apresentou os dados, porem o segundo mostra apenas os campos.

Marisiana
   - 26 jan 2015

O segundo vc tem que informar um código de setor que esteja cadastrado na tabela de setores e que possua produtos vinculados.
#Código

where s.cod_setor = 1 

Marilia Silva
   - 26 jan 2015

Sim, mas não trouxe nenhum dado. zerado mesmo.

Marilia Silva
   - 26 jan 2015

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

nesse trecho

#Código

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

Thiago Cruz
   - 26 jan 2015

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

Marilia Silva
   - 26 jan 2015

Obrigada Thiago, pode me ajudar com os outros?

Marilia Silva
   - 27 jan 2015

Pessoal, preciso de auxilio com os outros.

Marisiana
   - 28 jan 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?

Marilia Silva
   - 28 jan 2015

Entendi o primeiro que postou.

Marilia Silva
   - 28 jan 2015

Entendi o primeiro que postou.

Marisiana
   - 29 jan 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.

Marilia Silva
   - 30 jan 2015

Depois que entendi melhor, estava analisando o código. obrigada.

Marisiana
   - 02 fev 2015

Por nada Marilia!!