In my case the database is designed in a way that analysts have to use many tricks (nested windows functions for example) to get what they need. This technically can be fixed by a re-design of the whole database but in reality it's not practical.
One job that I have never seen a company does well is the transalation of business requirements through programmers and database designers/admins. Each has its own agenda and you need someone who is excel in all three fields to make the connection smooth and lossless. I have yet to find someone who is.
I'd also like to add that if business teams (analysts) stop complaining about database qualities, it doesn't mean you have implemented the right fixes. It usually means that they are so desperate that they decide to just live with them.
Understood. Let's imagine you found such real-world tasks and trying to solve them. You write SQL queries, play around to get dome results but now you need to confirm your solution is right. And given you are playing around on some website that gives you sandbox and interactive SQL tasks — I am not sure there is a way to confirm whether a solution you provided is right or wrong without involving a person (a mentor) to take a look.
One job that I have never seen a company does well is the transalation of business requirements through programmers and database designers/admins. Each has its own agenda and you need someone who is excel in all three fields to make the connection smooth and lossless. I have yet to find someone who is.
I'd also like to add that if business teams (analysts) stop complaining about database qualities, it doesn't mean you have implemented the right fixes. It usually means that they are so desperate that they decide to just live with them.