Just as the shop has no right to insist that you buy something when you enter the shop, they have the right to refuse to sell you anything. Rights work both ways.
The probable reason for not selling you the table/chair set may be that they wait until they have a 'sale' and get rid off their shop soiled goods all at once. This is a common practice.
There is no contract until you are requested to pay for an item. If you are asked to pay more for an item than it was listed or advertised for you have the right to refuse to fulfil the contract (not buy it) but you can not demand that they sell it for the cheaper advertised price. You are however perfectly within your right to report them and their fine for misleading advertising will be manyfold the item's price, so a shop will always let you have it for the cheaper price. The bad press from such a offence can easily cost a large firm many tens of thousands in lost business.
Don't give up bargain hunting though. The price on articles is an offer to sell only. If you want, say, four garden chairs which are advertised as separate articles, you should expect your offer of '10% discount if you buy 4 of them' to be excepted.
Good luck.