Het probleem is hier:
`ORDER BY karma...
U kunt niet bestellen op iets dat is gedefinieerd als een alias. Probeer dit:
`ORDER BY ((SUM(votes.karma_up) - SUM(votes.karma_down)) - 1) / POW((TIMESTAMPDIFF(HOUR, links.created, NOW()) + 2), 1.5) DESC`
Hopelijk kan de DB erachter komen om het niet twee keer te evalueren. Als dat niet het geval is, gebruikt u een inner select zonder de volgorde door eerst de alias te maken en vervolgens een andere select te gebruiken om te bestellen.