我相信你想要的是这样的:
SELECT *
FROM (
SELECT
reg.id,
reg.collection_id,
cr.number,
COUNT(*) AS ct
FROM tbl_registers AS reg
INNER JOIN tbl_cross AS cr
ON cr.register_id = reg.id
GROUP BY
reg.id,
reg.collection_id,
cr.number
) duplicates
WHERE duplicates.ct > 1
-- AND duplicates.collection_id = 56