sql - 如何组合两个查询的结果?
问题描述
我创建了一个有两个选择的过程,我想将这两个选择的结果合二为一。
这是我的程序
CREATE PROCEDURE spConsultarVendas
@nomeUsuario nvarchar(60),
@dataEmissao datetime,
@dataSaida datetime
AS
BEGIN
SELECT
NF.ID, NF.NaturezaOperacao, NF.DataEmissao, NF.ValorTotal
FROM
NotaFiscal AS NF
INNER JOIN
Venda AS V ON NF.ID_Venda = V.ID
INNER JOIN
Usuario AS U ON V.ID_UsuarioComissao1 = U.ID
WHERE
U.Descricao = @nomeUsuario
AND (NF.DataEmissao >= @dataEmissao AND NF.DataSaida <= @dataSaida)
SELECT
SUM(NF.ValorTotal) AS FinalValue
FROM
NotaFiscal AS NF
INNER JOIN
Venda AS V ON Nf.ID_Venda = V.ID
INNER JOIN
Usuario AS U ON V.ID_UsuarioComissao1 = U.ID
WHERE
U.Descricao = @nomeUsuario
AND (NF.DataEmissao >= @dataEmissao AND NF.DataSaida <= @dataSaida)
END
这些是结果:
我想将这些结果合二为一。
解决方案
您可以轻松地将最终结果添加到第一个查询的每一行:
SELECT NF.ID, NF.NaturezaOperacao, NF.DataEmissao, NF.ValorTotal,
SUM(NF.ValorTotal) OVER () AS ValorFinal
FROM NotaFiscal NF INNER JOIN
Venda V
ON NF.ID_Venda = V.ID INNER JOIN
Usuario U
ON V.ID_UsuarioComissao1 = U.ID
WHERE U.Descricao = @nomeUsuario AND
(NF.DataEmissao >= @dataEmissao AND NF.DataSaida <= @dataSaida)
推荐阅读
- django - 带有 Fieldset 的 Django Crispy Forms CustomLayout
- javascript - 模态未选择当前对象
- java - 我正在制作一个应该读取 PDF 文件的应用程序,但 PDF 的路径总是出错
- python - python 应用程序的动态配置刷新
- python - 如何在pygame中修复这些圆圈的碰撞?
- c# - 关于使用 WindowsFormsHost 的问题。(使用数据绑定)
- vue.js - 使用 VueJS 即时更新图像 src
- reactjs - 了解 onClick 处理程序中的“this”上下文
- java - 我如何创建新线程来执行某些任务并在任务完成后停止线程
- c# - 在循环中的两点之间移动对象?