From my limited reading and understanding of P25 systems, talk group IDs are only used in the radio's "home system". Interoperability occurs through all-call TG's unless the systems are patched together. Programing each and every radio for every P25 system in the state would be almost impossible for a number of reasons. I understand that Phase 1 P25 systems are limited to around 64,000 talk groups so reusing the same talk groups in different systems will become unavoidable with larger systems.
It's entirely possible that what I've said is bovine excrement. If so then please correct me so that all of us can learn something new.
Interoperability is often as simple as programming neighboring systems into a radio, for what's called "fingertip roaming," and in fact is the most common solution in many areas (for example, most radios here in the Columbus area have up to 7 area systems programmed). However, you are correct in that programming all systems across the state into a radio would be impractical; there is a limit based on the amount of memory a radio has. It would also be pretty pointless for a radio which may never move (or isn't intended to move) too far from it's home area.
P25 systems are specifically designed to be connected together to allow talkgroup roaming; as long as everything is set up correctly, a radio from one system can seamlessly and effortlessly roam onto another with only one system programmed and no intervention by the user; after the system controllers hem and haw with each other for a few milliseconds, the radio joins the new system. The allows cooperative expansion of coverage areas, and can be limited by talkgroup and/or radio. Talkgroup A might be permitted to roam, while Talkgroup B might not, and Radio C could roam while Radio D could not. And so on...
All-call talkgroups aren't specific to interoperability. They are used to broadcast a message across a pre-established (and programmed into the system and radios) group of talkgroups for things like making an evacuation announcement, etc etc.
However, systems wouldn't need to be connected together to avoid duplication of talkgroups. Assuming each county were allocated 500 talkgroups, and each metro city another 500, you're still only talking about 46,000 talkgroups used just for the counties and metro cities. That still leaves 18,000 talkgroups for other functions and users (state agencies and so forth). On top of that, some counties won't need even remotely close to 500 talkgroups, and their leftovers could be reallocated as needed to other locations.
So 64,000 talkgroups is more than enough for the entire state of Ohio and then some.