【发布时间】:2015-08-12 09:43:43
【问题描述】:
是否可以只创建一个在同一列上返回两个总和的查询?
我有什么:
总销售额
select month(emitido_date) as mes, ifnull(sum((det.preco * det.quantidade) * (iva.valor/100) + (det.preco * det.quantidade) - (det.preco * det.quantidade * (det.desconto/100))),0) as total
from documento as doc
inner join documento_serie as serie on serie.id = doc.documento_serie_id
inner join documento_detail as det on doc.id = det.documento_id
inner join phos_iva as iva on iva.id = det.iva_id
where serie.documento_categoria_id = 3 and doc.rascunho = false and doc.exercicio_id = 4
group by mes
order by mes
已结算销售额
select month(emitido_date) as mes, ifnull(sum((det.preco * det.quantidade) * (iva.valor/100) + (det.preco * det.quantidade) - (det.preco * det.quantidade * (det.desconto/100))),0) as total
from documento as doc
inner join documento_serie as serie on serie.id = doc.documento_serie_id
inner join documento_detail as det on doc.id = det.documento_id
inner join phos_iva as iva on iva.id = det.iva_id
where serie.documento_categoria_id = 3 and doc.rascunho = false and doc.exercicio_id = 4 and (serie.documento_tipo_id = 10 or serie.documento_tipo_id = 11 or serie.documento_tipo_id = 15)
group by mes
order by mes
第一个问题。我可能在同一个查询中返回一个带有 |Month| 的表。总销售额 |已结算销售| ?
第二个问题。在第二个查询中,在where子句中,当serie.documento_tipo_id字段为15时,在documento_detail表的inner join中,字段应为doc.source_id而是doc.id。我怎么能提出这个条件?
【问题讨论】:
标签: mysql sql mysql-workbench