SELECT color_id AS id, COUNT(color_id) AS count
FROM products
WHERE item_id = 1234 AND color_id IS NOT NULL
GROUP BY color_id
ORDER BY count DESC
LIMIT 1;
これにより、color_idと、そのcolor_idのカウントが最大から最小の順にカウントされます。これがあなたの望むものだと思います。
編集用...
SELECT color_id, COUNT(*) FROM products WHERE color_id = 3;