Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
----------------------------------------------------------------- -- SCRIPT_JOINS_EXEMPLOS_1.SQL -- CRIADO POR: Paulo Giovani -- Demonstra a utilização de JOINS em duas tabelas ----------------------------------------------------------------- USE master GO -- Habilita o banco Use Loja_Maria GO -- Exibindo as tabelas existentes SELECT name FROM sys.tables GO -- Exibindo os clientes SELECT * FROM Clientes GO -- Exibindo os pedidos SELECT * FROM Pedidos GO -- Exibindo os pedidos de cada cliente -- Exibir o nome do cliente e o número do pedido SELECT C.Nome_cliente, P.Numero_pedido FROM Clientes C INNER JOIN Pedidos P ON C.Codigo_cliente = P.Codigo_cliente ORDER BY C.Nome_cliente GO -- Exibindo os clientes que não possuem pedidos -- Exibir o nome do cliente e o número do pedido SELECT C.Nome_cliente, P.Numero_pedido FROM Clientes C LEFT OUTER JOIN Pedidos P ON C.Codigo_cliente = P.Codigo_cliente ORDER BY C.Nome_cliente GO -- Exibindo os clientes que não possuem pedidos -- Exibir o nome do cliente e o número do pedido -- Utiliza ISNULL para formatar o resultado SELECT C.Nome_cliente AS 'Nome do Cliente', ISNULL(CAST(P.Numero_pedido AS CHAR), 'Nada Consta') AS 'Número do Pedido' FROM Clientes C LEFT OUTER JOIN Pedidos P ON C.Codigo_cliente = P.Codigo_cliente ORDER BY C.Nome_cliente GO -- Quais clientes têm prazo de entrega superior a 15 dias e pertencem aos estados -- de São Paulo ou Rio de Janeiro? -- Exibir o nome do cliente, o número do pedido e o prazo de entrega SELECT C.Nome_cliente AS 'Nome do Cliente', P.Numero_pedido AS 'Número do Pedido', P.Prazo_entrega AS 'Prazo de Entrega' FROM Clientes C INNER JOIN Pedidos P ON C.Codigo_cliente = P.Codigo_cliente WHERE P.Prazo_entrega > 15 AND C.UF IN ('SP', 'RJ') ORDER BY C.Nome_cliente GO -- Exibir os clientes e seus respectivos prazos de entrega, ordenados do maior para o menor -- Exibir o nome do cliente, o número do pedido e o prazo de entrega SELECT C.Nome_cliente AS 'Nome do Cliente', P.Numero_pedido AS 'Número do Pedido', P.Prazo_entrega AS 'Prazo de Entrega' FROM Clientes C INNER JOIN Pedidos P ON C.Codigo_cliente = P.Codigo_cliente ORDER BY P.Prazo_entrega DESC GO -- Apresentar os vendedores (ordenados) que emitiram pedidos com prazos de -- entrega superiores a 15 dias e tenham salários fixos iguais ou -- superiores a R$ 1.000,00 -- Exibir o nome do vendedor, o número do pedido e o prazo de entrega SELECT V.Nome_vendedor AS 'Nome do Vendedor', P.Numero_pedido AS 'Número do Pedido', P.Prazo_entrega AS 'Prazo de Entrega' FROM Vendedores V INNER JOIN Pedidos P ON V.Codigo_vendedor = P.Codigo_Vendedor WHERE P.Prazo_entrega > 15 AND V.Salario_fixo >= 1000 ORDER BY V.Nome_vendedor GO -- Apresentar os vendedores (ordenados) que emitiram pedidos com prazos de -- entrega superiores a 15 dias e tenham salários fixos iguais ou -- superiores a R$ 1.000,00 -- Exibir o nome do vendedor, o número do pedido e o prazo de entrega -- Utiliza a cláusula COMPUTE BY para calcular quantas vendas cada vendedor realizou SELECT V.Nome_vendedor AS 'Nome do Vendedor', P.Numero_pedido AS 'Número do Pedido', P.Prazo_entrega AS 'Prazo de Entrega' FROM Vendedores V INNER JOIN Pedidos P ON V.Codigo_vendedor = P.Codigo_Vendedor WHERE P.Prazo_entrega > 15 AND V.Salario_fixo >= 1000 ORDER BY V.Nome_vendedor COMPUTE COUNT(V.Nome_vendedor) BY V.Nome_vendedor GO
Compartilhar