If I understand your question correctly you need to maintain unique questions in your database. I've a suggestion in which we can find out the keywords (Tags) of from the Question String. To find out the keywords (Tags) from the question we can use 2 ways.
When a question is inserted. we can also take the tags which is related to Question. For Example:
Q1. What colour is the sky?
Tags:- colour, sky
Q2. The sky is what colour?
Tags:- sky, colour
2. Finding the tags automatically
Here we can put the normally used words in table of DB like
be, do, have, is, does, had, are, did, has, am, were, was, being, been
The, A, An
When, Who, How, Why, What, Where
you can find more like that and then we acually subtract this words (keywords/tags) from the string and find the tags automatically.
Either ways we find out the tags. after finding the tags
Letz say if we found 20 tags in a question then we can query that if a question match morethan 15 tags will list and thus can find whether the question is repeat or not.