I guess it's a very specific case, and the user knows most of the tables by name. Therefore, I could create a more advanced query system, something like gmail does when it filters.
Let the user for example write:
Now look for all the appearances of & # 39; car & # 39; in the type.
Depending on the technical level of your users, you can extend this to:
car in type, vehicle, transport
You can even provide them with a car * to find carGo somewhere in the type, vehicle or transport columns.
You can go very far in this, but make sure that the default search of a car without any special thing keeps working.
Also, make sure you do not create an additional layer of difficulty in which the user has to make sure that their query is valid, not all of them will insert a combination of space. Try to insinuate it if you forget a combination by validating the entry:
Is there a vehicle transport column? No, he does a column vehicle, yes, he does column transport, yes, that's probably what he wants to say.
Add some astonishment (for a user who does not know SQL) and let him write:
Car in type, vehicle, transport by speed.
And show the results sorted by speed. But that could be an exaggeration in your case, assess the value against the cost.