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;
To da ci color_id i liczbę dla tego color_id uporządkowaną według liczby od największej do najmniejszej. Myślę, że tego właśnie chcesz.
do edycji...
SELECT color_id, COUNT(*) FROM products WHERE color_id = 3;