For the regular Joe wanting a small business website, he could call 5 companies to enquire about small business web design and end up with a head full of terms like, html5, html4, JQuery, PHP, Wordpress, Joomla, mySQL, MSSQL...just to name a few. Unfortunately, this is really nonsense since what matters is determining if the company can do the desired job. What the small business owner must do is realize that it is probably useless to go the direct html/css route since this method is rather disposable while using a CMS is recyclable and reusable. Since change is inevitable, having a website that is simple to change is the way to go. If you can find a company that knows their way around 3 of the biggest and cheapest; Joomla, Drupal and Wordpress you have now gotten 1 step further.
Now, another division can be made here since so many many web designers can point and click their way around building a website with a CMS. What separates the men from the boys here are companies who can add, create and modify custom extensions for these Content Management Systems or even add custom PHP/mySQL programming to the CMS. If your designer can do all that, you can build your website or make it have those features you want. If your designer cannot code php/mySQL, then, your site will be rather 'canned looking' or unable to do those custom requests.
In some cases, a company with a large budget or a very specific request just may need a custom PHP/mySQL website to do the task so that it is very lightweight and functional.
Although this article had a heavy emphasis for open source cms, a .net website would be sufficient for anybody wanting to go this route. With .net database driven websites, a programming language like C# or VB is used instead of PHP and the database is typically MSSQL rather than mySQL.