If the total number of problems is not large: store it directly in the memory of the application system and define the data structure, you can completely eliminate the need for a database;
If there are a certain amount of problems, putting them in memory will have an impact on the application. Put them in the database, define the table structure, and use the like query like you said. As for the choice of database, currently Commonly used ones are ok, even sqllite will work;
If the total number of questions is large, you can consider nosql databases such as mongodb. The built-in queries can also meet your needs;
If the total number of questions is very large, maybe you need to use a search engine, Solr or build it yourself based on Lucene. Let me briefly talk about this. Search engines generally calculate the similarity of the search questions first, and then compare them with the question library. Compare existing questions (of course, the preprocessing strategy for this question can also be used in the previous methods), and find out existing matching questions [In fact, search engines are of course much more complicated than this. I think you Does the so-called intelligent prompt mean something like this? ];
If the total amount of the problem is huge and involves a lot more things, it is equivalent to Baidu knowing about it. I can’t help with this and I can’t give any good suggestions;
Depending on the size of the problem:
1, use full-text index for query 2. Analyze user click logs and adjust the sorting of query results