waarom gebruik je HAVING ... vanwege het feit dat je query geen geaggregeerde functie gebruikt, zodat je kunt filteren waar (maar waar niet, moet je de code herhalen) en voor prestaties met waar vermijd een volledige scan voor het behalen van de resultaat voor het hebben van evaluatie
$query = $mysqli->query("SELECT postcode, (
6371 * acos (
cos ( radians('$latitude') )
* cos( radians( lat ) )
* cos( radians( lng ) - radians('$longitude') )
+ sin ( radians('$latitude') )
* sin( radians( lat ) )
)
) AS distance
FROM postcodetabel
WHERE 6371 * acos (
cos ( radians('$latitude') )
* cos( radians( lat ) )
* cos( radians( lng ) - radians('$longitude') )
+ sin ( radians('$latitude') )
* sin( radians( lat ) ) )< 12
ORDER BY distance ASC");