As with most of these word/phrase origins, it’s very hard to track down an exact source. “Sick as a dog,” meaning “very sick,” dates back to at least 1705. It’s the oldest “sick as a _____” on record, though various animals (e.g. cats, rats and horses) have filled in the blank throughout history.
The general consensus is that:
(a) When dogs are sick, they’re noticeably different from when they are healthy. If a cat is sick, it lies around the house all day. If a cat is healthy… it lies around the house all day. But a sick dog will not jump, lick, sniff and play like a healthy dog. When a dog is sick, you notice. Thus, “sick as a dog” makes sense to anyone who has a dog; “sick as a goldfish” probably doesn’t mean much to anyone.
(b) Dogs are the only animal that most people are likely to ever see vomit (other than cats coughing up hairballs). The phrase “sick as a dog” probably originated in Britain. While “being sick” in North America can mean a number of things (having a cold, the flu, a stomachache), in Britain it usually means vomiting. If you are so sick that you are vomiting, you might equate yourself with a sick (i.e. vomiting) dog.
(c) We simply like to use dogs in phrases: dog-tired, dog-eared, go to the dogs, she’s a dog… Dogs are the animals people are most familiar with so they pop up in a lot of idioms.
Now since I’ve done my educational, wierd best for now, I’ll get back to more important matters. 😉