Intanto mi corre l’obbligo di ricordarti che io sono tutt’altro che un esperto di database e di interrogazioni ciò detto, se io dovessi complicarmi la vita come vuoi fare tu, partirei sempre e comunque dalle parole chiave.
Vale a dire prima cercherei tutte le parole chiave che in base alla costruzione del tuo database, tabelle (relazioni) e campi mi permettano di preconfezionare le interrogazioni con criterio, poi cercherei tutti i sinonimi delle parole chiave e quindi attraverso il LIKE di Gambas punterei ad una particolare costruzione prefabbricata di query fra le tante già prefabbricate.
Per poter fare un esempio pratico, ammesso che ne fossi capace, dovrei conoscere come sono costruite le tabelle del tuo database e conoscere meglio SQL ma tanto per dire potresti cercare con LIKE nella libera frase dell’utente tutti i tipi di negazione: senza non escluso contrario opposto che diventerà NOT, estrarre: e anche pure ed ancora che diventerà AND e così andare per tutte le parole chiave a te utili, tutte le parole che rappresentano i campi o i loro sinonimi ecc. poi come detto cerchi l’interrogazione preconfezionata (e funzionante) che più si avvicina a quello trovato nella frase scritta dall'utente e la dai in pasto al database.
L’interrogazione prima dovrà essere completata dai campi e tabelle e il gioco è fatto e magari puoi anche riferire mostrandogliela all’utente in forma comprensibile come hai interpretato la sua domanda in modo che capisca il meccanismo di traduzione.
Per me è l’unico modo, altrimenti se cerchi di creare un’interrogazione direttamente da quello inserito non ne esci.