SET @prev_width := NULL;
SET @prev_height := NULL;
SET @counter := 0;
SELECT t.*,
@counter := IF(@prev_width = raw_glass_width and @prev_height = raw_glass_height, @counter,
@counter + 1) AS group_number,
@prev_width := raw_glass_width,
@prev_height := raw_glass_height
FROM engineering_raw_queue t
where t.engineering_id = #{engineerId}
and t.state = 0
ORDER BY t.raw_sequence
select t1.*
from engineering t
INNER JOIN engineering_raw_queue t1
on t.engineer_id = t1.engineering_id
where t.state = 1
and t1.state <= 2
and t.work_line = #{workLine}
order by t1.raw_sequence
limit 1
update engineering_raw_queue
set state = #{finishTaskState}
where engineering_id = #{engineerId}
and state in (
#{item}
)
order by raw_sequence
limit #{count}