Blogs can achieve very good rankings, which is shown for many keywords. If a post is a good one, people will link back to it, which is like word of mouth marketing essentially and it will move up on the rankings. Have the page title and/or article title contain the keyword or keyphrase you want to rank for and it can shoot up in the rankings over time. Now if you are trying to compete with like "buy viagra" or other highly competitive keywords then a simple blog will do you no good without some form of blackhat marketing (which many of them do) or having a site that is old and established in the eyes of the search engines.
Blogs/Sites eh what's the difference? Look up Making Money Online and you'll notice a good portion of those are blogs but if you look at other big terms then almost all of them are websites. It all depends on the general SEO of your blog and what keywords you're trying to hit.