Ugh... I have 3 tanks... After trying sand in my first one, my next two are bare-bottomed.
I've still got sand in my first one, because Puck who's in there LOVES to dig little wells for me... but he also cover his poop up for me to go hunting for...! It's so tough to keep clean, It's pure white sillica sand and I've also got a big wooden log in there which makes the sand dirty with little flakes, no matter how many times I rinse!
So until I find a quicker method, I'll just remove as much water as I would normally for a water change, then I just use my turkey baster all over the bottom, taking as much sand as I have to just to get up all the dirt... then squirt it into a jug, let it settle (the dirt rises to the top) then pour away the water slowly and carefully. I keep doing this until I pour away all the dirt. Then as I'm replacing the water from the water change, I use the same jug and the sand just re-joins the tank with the replaced water.
Funny thing is - I used to take Puck out for the water change but if I replace the water very gradually, I just leave him in there. He seems to like it... and when I'm hunting round for poop with my baster, he just follows me round the tank.