How to UPDATE from JOIN with GROUP BY
UPDATE table2 AS b1, ( SELECT b.id, MIN(IFNULL(a.views, 0)) AS counted 
                       FROM table1 a 
                       JOIN table2 b ON a.id = b.id 
                       GROUP BY id 
                       HAVING counted &gt; 0 ) AS b2
SET b1.number = b2.counted
WHERE b1.id = b2.id