¿Cómo se debe determinar el contexto de una consulta del usuario si no hay historial disponible para el usuario?

Si están buscando Apple en la columna de fruit , es por fruta. Si están buscando a Apple en la columna de la brand , es para la marca.

Es por eso que es importante en el diseño de la base de datos tener diferentes columnas para diferentes tipos (no me refiero a los tipos de datos SQL, me refiero a escribir en el sentido teórico de un conjunto de datos con nombre).

Esto es cierto para las bases de datos relacionales, por supuesto, pero también es cierto para las bases de datos no relacionales. No debe hacer un campo llamado fruit_or_maybe_brand , al menos no si desea distinguir entre esos dos tipos de búsquedas.

Esto incluso es válido para los motores de búsqueda semánticos. En esos motores, busca un valor contra un predicado específico, lo que significa que está buscando sujetos donde una determinada propiedad tiene el valor dado. El predicado, por lo tanto, determina el contexto.

Si están buscando un índice de texto completo para “Apple”, entonces no están buscando ni la fruta ni la marca, están buscando la palabra “Apple”.