SET @i=0, @field_tmp=null, @bit_or=null;
SELECT *, SUBSTRING( MAX( CONCAT(LPAD(i,10,'0'), bit_or) ), 11) AS bit_or
FROM
(
SELECT *, @i:=@i+1 as i,
(IF(field=@field_tmp, @bit_or:=(@bit_or|fieldOfTypeSET), IF(@field_tmp:=field, @bit_or:=fieldOfTypeSET, 0))) AS bit_or
FROM test
ORDER BY field DESC
) AS t
GROUP BY field