• The condition in a HAVING clause is different than the condition on a WHERE clause as the HAVING condition acts on the result of the aggregation.

    Consider the condition Count(something) > 2

    This as a HAVING condition would return a data set when there were more than 2 somethings existed. It is not possible to replicate this condition with the WHERE clause as each individual data row is 'unaware' of other rows with the same value.

    to put the answer the other way round.

    You can use the WHERE condition in a HAVING condition - but is a misuse of HAVING

    You can not always put the HAVING condition in the WHERE condition - If you can, my suggestion is that you do.