Consulta e outras operações no banco de dados do pedido

Consulta e outras operações no banco de dados do pedido

Para estrutura da tabela:

1. Agente (número do agente, nome, endereço, CEP, valor da comissão, taxa de comissão)

O número do agente é a chave primária

Nome do campo Tipo de dados Observações
ID do agente char (4) chave primária
Nome nvarchar (10)
Morada nvarchar (20)
Código postal char (6)
Montante da comissão dinheiro pequeno
Percentagem de comissão tinyint

2. Clientes (número do cliente, nome, endereço, CEP, diferença de receita e despesa, limite de empréstimo, número do agente)

O número do cliente é a chave primária

Nome do campo Tipo de dados Observações
ID do cliente char (4) chave primária
Nome nvarchar (10)
Morada nvarchar (20)
Código postal char (6)
Balança de pagamentos dinheiro pequeno
Limite de empréstimo dinheiro pequeno
ID do agente char (4) chave estrangeira

3) Produtos (número do produto, informações de descrição, inventário, categoria, número do depósito, preço)

O número de série do produto é a chave primária

Nome do campo Tipo de dados Observações
ID do produto char (4) chave primária
Informação descritiva nvarchar (20)
Inventário int
Categoria tinyint
ID do armazém char (4)
Preço dinheiro pequeno

4) Pedido (número do pedido, data do pedido, número do cliente)

Nome do campo Tipo de dados Observações
Número do pedido char (4) chave primária
Data do pedido Smalldatetime
ID do cliente char (4) chave estrangeira

5) Itens do pedido (número do pedido, número do produto, quantidade do pedido, preço unitário do pedido)

Nome do campo Tipo de dados Observações
Número do pedido char (4) chave primária , chave estrangeira
ID do produto char (4) chave primária , chave estrangeira
Quantidade da ordem smallint
Preço unitário do pedido dinheiro pequeno

Consultar o estoque total de produtos com o número do armazém 1002, exibir o número do armazém e o estoque total

select 仓库编号,sum(库存量) as 总库存量 from 产品
group by 仓库编号
having 仓库编号='1002'

Consulte o agente com o maior valor de comissão, mostrando o número do agente, nome, endereço e valor da comissão

select 代理商编号,姓名,地址,提成金额 from 代理商
where 提成金额 in (select max(提成金额) from 代理商)

Consulte o nome e o endereço do agente transmitido pelo cliente com o número 300

 select a.姓名,a.地址 from 客户 b inner join 代理商 a
 on a.代理商编号 = b.代理商编号
 where b.客户编号 = '300'

Consulte o número do cliente e o nome do número do produto 0033, a quantidade do pedido é maior que 100

Nota: A quantidade do pedido mencionada aqui é para contar o número de produtos com um número total de pedidos 0033. Porque o mesmo cliente pode ter solicitado produtos 0033 em vários pedidos diferentes.

select a.客户编号,a.姓名 from 客户 a inner join 订单 b
on a.客户编号 = b.客户编号
inner join 订货项目 c 
on b.订单编号 = c.订单编号
group by a.客户编号,a.姓名,c.产品编号
having sum(c.订购数量)>100 and c.产品编号='0033'

Consultar o pedido de cada cliente, exibir o número do cliente, o nome do cliente, o número do pedido e a data do pedido

select a.客户编号,a.姓名,b.订单编号,b.订货日期 from 客户 a
inner join 订单 b on a.客户编号 = b.客户编号

Consultar todos os itens do pedido após 2000 (não incluindo 2000), exibir e exibir apenas o número do pedido, o número do produto, a quantidade do pedido, o preço unitário do pedido

select a.订单编号,a.产品编号,a.订购数量,a.订购单价 from 订货项目 a
inner join 订单 b on a.订单编号 = b.订单编号
where  (DATEPART(yy,b.订货日期))>2000 

Consulte o nome do cliente correspondente ao agente cujo valor da comissão é superior a 100.000 (incluindo 100.000)

select a.姓名 from 客户 a inner join 代理商 b
on a.代理商编号 = b.代理商编号
where b.提成金额>=100000

Crie uma exibição que contenha o número do pedido, o número do cliente e o número do agente do pedido, chamado de visualização de informações do pedido

create view 订单信息视图 as 
select b.订单编号,a.客户编号,a.代理商编号 from 客户 a
inner join 订单 b on a.客户编号 = b.客户编号

Na exibição de informações do pedido, consulte as informações do produto com o número do pedido 111 (incluindo número do pedido, número do cliente, número do agente)

select 订单编号,客户编号,代理商编号 from 订单信息视图
where 订单编号 = '111'

建立一个含有产品编号、产品库存量及产品在订量三个字段的视图,名为产品信息视图

注:① 产品在定量指产品已经累计被订购的数量

② group by 子句可以将查询结果按某一列或多列的值进行分组,但出现在select后面的字段 要么是聚合函数中的,要么是在group by 中的。

create view 产品信息视图 as
select a.产品编号,a.库存量,sum(b.订购数量) as 产品在定量 from 产品 a
inner join 订货项目 b on a.产品编号 = b.产品编号
group by a.产品编号,a.库存量

从产品信息视图中,查询产品在定量大于6100的产品,显示产品编号及产品在定量

select 产品编号,产品在定量 from 产品信息视图
where 产品在定量>6100

建立一个含有客户编号、客户所订的产品编号、该产品的订购单价及该产品的描述四个字段的视图,名为客户订购产品视图

create view 客户订购产品视图 as
select a.客户编号,b.产品编号,b.订购单价,c.描述信息 from 订单 a
inner join 订货项目 b on a.订单编号 = b.订单编号
inner join 产品 c on b.产品编号 = c.产品编号

从客户订购产品视图中,查询所订购的产品的订购单价<=1000的客户编号

select 客户编号 from  客户订购产品视图
where 订购单价 <=1000
group by 客户编号

Acho que você gosta

Origin www.cnblogs.com/lightice/p/12727933.html
Recomendado
Clasificación