It's not as simple and clear-cut as that.
For example, tanks "beat" ADCs in the midgame (basically any melee does). Also, some control mages (like Orianna and Lulu) do very well against assassins, while others (Azir) tend to not do as well.
Also, even in the lategame, not all ADCs do well against tanks. For example, while Kalista is a generally strong ADC, nobody want to sit there forever hitting tanks when something like Kog'Maw, Vayne, Lucian, Jinx, and Tristana do much better. Then champions like old Graves, old MF, and old Corki tended to be less ideal.
Supports and CC don't necessarily beat bruisers so much as peeling and kiting does. For example, as Ashe (or Ezreal for a more extreme example), you're an absolute nightmare for Darius unless you make a massive mistake in positioning. You don't need supports or CC for that.
CC mages also don't beat assassins. Xerath loses, Azir loses, and TF absolutely loses. You can't put a bunch of champions into a few simple categories and say X always beats Y while Y does well against Z.
It's better to just learn a few champions and learn which situations they excel at and which situations they are poor at. Every champion is different and even the similar ones (like Jax and Irelia) have small differences that make a world of difference. Irelia is much stronger onto a single target (with a 2 second single-target stun), but Jax can make a game-changing initiation with a 5 man stun lasting 1 second. Also, Jax is inherently tankier (with R and E), but Irelia can potentially live longer through her on-hit heal and spell vamp of her R. Then Talon and Zed, while Zed can do more damage in teamfights, Talon can get onto people more easily with his stealth. Also, before the QSS change, Talon's ability to 100-0 you wasn't denied by a ~1300 gold item. Zed was the more consistent option, but at the same time the one with more obvious counters (Zed should always lose to a good Ahri, while Talon should have a decent chance, though I don't main mid so don't quote me on that, figure it out by playing it yourself).
And finally, there's the fact that how well a champion does heavily relies on who is actually playing the champion. For example, a Rumble does fairly poorly against Nasus at higher ELOs. Nasus rushes a Spectre's Cowl and farms all he wants. Rumble's window of power is just the time until Nasus gets that item. And while Nasus shouldn't be able to solo kill Rumble (Rumble can kite through Wither with his Harpoons), Nasus has more threat in lane and a better trade since around midgame Nasus can take at least 1/3 of Rumble's HP in a semi-prolonged trade while a large chunk of Nasus' damage taken will be mitigated and healed back up. However, at lower ELOs, Nasus players will do stupid things, like go for greedy builds (like Kindlegem into Glacial Shroud, or worse, the other way around) and do greedy things like tank creeps they don't need to tank or walking up to the wave when they have nothing to gain from it (there is no CS to immediately last hit, there isn't a good trade opportunity, and there isn't a gank coming to help him). Then Rumble's damage sticks more and the Rumble player has more opportunities to get good trades in. A good Rumble against a good Nasus, it becomes a farm war heavily swayed by ganks. A good Rumble against a bad Nasus, and it becomes a 0-3 Nasus in under 15 minutes. A good Nasus against a bad Rumble, and you have a scary late-game Nasus, as well as maybe a few kills around 8-15 minutes that Nasus shouldn't have.
tl;dr learn a few champions you like and understand when they are strong and when they are weak, and look to capitalize on your strengths while covering your weaknesses. It honestly doesn't matter what general group beats what, since it's entirely up to Riot's whims.