gpt4 book ai didi

Mysql根据列总和结果选择列

转载 作者:行者123 更新时间:2023-11-29 21:50:00 25 4
gpt4 key购买 nike

我有这个查询:

SELECT 
DESCRIPCION,
MEDICION,
UNIDAD,
PRECIOUNITPROV1,
PRECIOUNITPROV1 * medicion AS IMPORTE1,
PRECIOUNITPROV2,
PRECIOUNITPROV2 * medicion AS IMPORTE2,
PRECIOUNITPROV3,
PRECIOUNITPROV3 * medicion AS IMPORTE3
FROM
contcomparativos
INNER JOIN
comparativos ON comparativos.codobra = contcomparativos.codobra
AND comparativos.numcomp = contcomparativos.numcomp
WHERE
comparativos.user = 'root'
AND comparativos.codobra = '39E'
AND comparativos.familia = 'ANDAMIOS SUSPENDIDOS'

我想要得到的只是这 3 列中的一列 -> IMPORTE1、IMPORTE2 或 IMPORTE3。

选择正确列的标准是:

至少(总和(IMPORTE1),总和(IMPORTE2),总和(IMPORTE3))

因此我只想在我的查询中包含 de IMPORT? SUM 值较小的列

提前致谢。

最佳答案

您是否在 MySQL 中尝试过LEAST()

这可能有效

SELECT 
DESCRIPCION,
MEDICION,
UNIDAD,
PRECIOUNITPROV1,
PRECIOUNITPROV1 * medicion AS IMPORTE1,
PRECIOUNITPROV2,
PRECIOUNITPROV2 * medicion AS IMPORTE2,
PRECIOUNITPROV3,
PRECIOUNITPROV3 * medicion AS IMPORTE3,
(CASE LEAST(SUM(PRECIOUNITPROV1 * medicion),SUM(PRECIOUNITPROV2 * medicion),SUM(PRECIOUNITPROV3 * medicion)) WHEN SUM(PRECIOUNITPROV1 * medicion) THEN 'PRECIOUNITPROV1' WHEN SUM(PRECIOUNITPROV2 * medicion) THEN 'PRECIOUNITPROV2' WHEN SUM(PRECIOUNITPROV3 * medicion) THEN 'PRECIOUNITPROV3' END) AS Least_Sum_Column_Name
FROM
contcomparativos
INNER JOIN
comparativos ON comparativos.codobra = contcomparativos.codobra
AND comparativos.numcomp = contcomparativos.numcomp
WHERE
comparativos.user = 'root'
AND comparativos.codobra = '39E'
AND comparativos.familia = 'ANDAMIOS SUSPENDIDOS'

希望这有帮助。

关于Mysql根据列总和结果选择列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33741030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com