The best way I have found to clean a yucky hose is to run a little bleach down in the hose, and then fill it the rest of the way with water. Hold both ends up - either pinning them on the clothesline or setting them up in the sink and let it sit in the hose for about 10 minutes. I then blast loads of hot water through the thing and it is all clean.
Some people like to use hydrogen peroxide in their hoses - its oxidation loosens and disinfects. I would use full strength and let it sit for 10 minutes then blast it clean.
On a really large diameter hose, I have put grains of long cooking rice in and shaken the with a little bit of water. They are abrasive enough to scrub the tube clean.
After you clean your fish tank, run clear water through your hose. I hand mine on a peg over my utility sink in the laundry - with both ends hanging down. It drains well that way and gets a minimum of gunk in it.
If all else fails, if you go to a HomeDespot store or the like, you can buy new hosing by the foot. It is not too expensive at all. I have done that, too, for some of my vacumns came with such short hoses they were always popping out of the drain bucket. Now I have 6 feet or more on them!