HAVING is only for GROUP BY queries, where you're applying the filter to the resulting groups, and not to the rows before they're grouped. In this case you can just write it like you have the restrictions in English. the shoppers who joined the company after 01-01-02020 or are a woman ... FROM shoppers -- the shoppers WHERE -- who date_joined >= '2020-01-01' -- joined the company after 01-01-02020 OR -- or gender = 'F' -- are a woman ... Also, aliases should not be in single quotes, that's for string literals. Either use no quotes or double quotes to show it's an identifier. SQLite will probably let you do it, but it's being kind. ... AS Age or ... AS "Age" but not ... AS 'Age'