Mysql 在一列中计算多个值

Mysql 在一列中计算多个值,mysql,if-statement,sum,conditional-statements,Mysql,If Statement,Sum,Conditional Statements,长期读者,第一次海报。我有一个表,我需要从中收集计数。一些值(在“product_group”列中找到)被重复的时间量,有时还必须考虑来自不同列(“product_type”)的值 我在论坛上搜索了很长时间,这就是我现在想到的。。。我的问题是我觉得这不是最有效的方法。此外,如果没有条件匹配(例如else条件),则不允许计算 我的目标是找出加权用户生产率。因此,我计算用户每次处理特定产品的时间。根据产品的类型,我将修改该值(从原始值的0.83修改为1.25),以考虑复杂性。一旦所有不同产品的重量都

长期读者,第一次海报。我有一个表,我需要从中收集计数。一些值(在“product_group”列中找到)被重复的时间量,有时还必须考虑来自不同列(“product_type”)的值

我在论坛上搜索了很长时间,这就是我现在想到的。。。我的问题是我觉得这不是最有效的方法。此外,如果没有条件匹配(例如else条件),则不允许计算

我的目标是找出加权用户生产率。因此,我计算用户每次处理特定产品的时间。根据产品的类型,我将修改该值(从原始值的0.83修改为1.25),以考虑复杂性。一旦所有不同产品的重量都被“挤压”,我将它们全部相加,然后除以工作小时数

在我的PHP代码中,数学是在SQL查询之外完成的。我想知道使用WHERE部分中的条件运行多个顺序SQL查询是否比以前的方法更好。下面是在这种情况下的情况

SELECT 
   COUNT(*)*0.95 as `Value1`
FROM
   [tables]
WHERE
   record_type NOT LIKE '%TypeA%'
   AND  product_group LIKE '%Product1%'
   [other conditions]
然后对其他10个左右的值重复

所以这差不多就是总结。任何建议,提示,链接,你可以与我分享将不胜感激,因为我几乎用尽了所有的资源,我可以想到的


关于

你的方法是更好的方法。运行单独的SQL查询将导致多次扫描表。最好只检查一下桌子

您也可以在SQL中执行额外的算法。但是,如果您已经在应用程序代码中编写了它,则无需更改它

SELECT 
   COUNT(*)*0.95 as `Value1`
FROM
   [tables]
WHERE
   record_type NOT LIKE '%TypeA%'
   AND  product_group LIKE '%Product1%'
   [other conditions]