Я даю ответ, потому что вы можете упростить предложение where
, потому что MySQL поддерживает кортежи. Логика будет выглядеть так:
select t.*,
(devicePoint + osPoint + browserPoint) as 'Total'
from (select (case when device = 'Default' then 1 else 5 end) as devicePoint,
(case when operating_system = 'Default' then 1 else 3 end) as osPoint,
(case when browser = 'Default' then 1 else 2 end) as browserPoint
from mytable t
where (device, operating_system, browser) in
( ('Desktop', 'Ios', 'Firefox'),
('Desktop', 'Ios', 'Default'),
. . .
)
) t;