Is there a way to know previous Steam sales?
Not on Steam itself. However, third party websites such as SteamDB exist specifically for this purpose.
I use a browser extension called Enhanced Steam that gives me lowest price ever, lowest price currently, and if the game has (or is) in a bundle.
It searches a variety of websites, not just Steam, and I can also access a graph of price history, so I can see what is happening with any price fluctuations.
If you're interested in a game on Steam and are interested in the price from anywhere you could try http://isthereanydeal.com.