Given that you’ve sorted out the definition of the lists, you also need to be able to pick out one of the a where clause. The syntax you’ve shown is for when the subject has one and only one value. When you switch to multiple value you need to change into something like:
where econtains(subject, "biology")
I like to use econtains() as it tests for the full text in your list of values. You can use contains(), but then something like contains(subject, "logy") would match both values, which could be a useful side effect, but in most cases I find that would introduce false positives, so I use econtains().