In my case there are over 250 words/phrases I am checking against, and I need the query to return all records that match any one of those phrases. The table has about half a million records.

What is the best way? Surely not 250 OR statements in my where clause?

If I can't think of an efficient way (though, this is a one time only query) I think what I'd do is run 250 queries, one for each word, marking articles in which the word/phrase appears. That way I'll have a simple parameter to check against. Still, 250 queries on a fulltext table of half a million records, sucks, I'm sure.