SQL Query Gunakan Name Select Inside Where Clause

You can not use aliased columns in a WHERE clause. You can try using a derived
table. Perhaps something like this (sorry, not tested):

select tblProgram.POIname from tblProgram
where 
  -- Use this if you only want to filter by the value.
  (select count(*) as alias_name from `fb_promo_codes_used`) < 2
Lokesh003