A repeating group can only have a single content-type.
So it’s not possible to display different datatypes directly in the same repeating group.
So one option is to create a new datatype, that will be used as the content type of the repeating group, that has fields to link it to the various other datatypes that you want to show data from.
The RG content type will be that new datatype, and then you can use conditions within the RG elements to display the correct data (e.g. if current cell’s thing’s datatype A is not empty, then display the current cell’s thing’s datatype A’s Name etc.).
An alternative way, especially if you only need to display simple text data, is to set the RG content type to ‘text’ then set the data source to text fields from the various datatypes you want to display (using the ‘merged with’ operator). That won’t require the creation of any new datatypes, but it does make things a little more complex in terms of running actions on the cells data, or displaying things other than texts.
Alternatively you may just need to restructure your current datatypes a bit…
From what you’ve described (and I could be wrong as I don’t have much info to go on), both of the datatypes you mentioned in your original post have fields for company name and email, which I’m guessing are text fields. That makes it difficult to do what you’re trying to do here.
If that’s the case it would make more sense for those datatypes to have a field for Company (which is of type ‘Company’). That way the content type of your RG can simply be Company, and you can use ‘merged with’ to search for all the companies from within the various other datatypes, then display the company data inside the RG.
So it really depends on how your current database is set up and exactly what you’re trying to do, but I’d suggest double checking your current data structure and making sure it’s set up in the most efficient way to be able to access data as you need to.