如何在Table View中查询各criteria对应的fuzzy_number3最大值
方案1:直接使用已创建的v_datanilaikriteria视图查询(最简便)
你已经把需要关联的字段都整合到视图里了,直接按id_criteria分组求最大值即可:
SELECT id_criteria AS id_kriteria, MAX(fuzzy_number3) AS max_number FROM v_datanilaikriteria GROUP BY id_criteria;
方案2:修改你原有原生SQL实现
把你原有SQL里限制单条指标的WHERE条件删掉,加上GROUP BY id_criteria按指标分组即可:
SELECT MAX(`spkfu`.`intervals`.`fuzzy_number3`) AS `max_number`, `spkfu`.`criteria`.`id_criteria` AS `id_kriteria` FROM (((`spkfu`.`technical_aspect` JOIN `spkfu`.`alternative` ON `spkfu`.`alternative`.`id_alternative` = `spkfu`.`technical_aspect`.`id_alternative`) JOIN `spkfu`.`criteria` ON `spkfu`.`criteria`.`id_criteria` = `spkfu`.`technical_aspect`.`id_criteria`) JOIN `spkfu`.`intervals` ON `spkfu`.`intervals`.`id_criteria` = `spkfu`.`technical_aspect`.`id_criteria` AND `spkfu`.`intervals`.`value_criteria` = `spkfu`.`technical_aspect`.`value_criteria`) GROUP BY `spkfu`.`criteria`.`id_criteria`;
注意事项
你之前创建视图的SQL里有拼写错误:把technical_aspect错写为tehcnical_aspect,如果视图创建失败可以先修正这个拼写问题。
内容的提问来源于stack exchange,提问作者Akmal Fikri
相关产品推荐
相关产品推荐

