我的概念不太清楚。对于我的网站,我想创建一个搜索框。我将使用自动完成功能来检查数据库中的相关关键字。因此,输入匹配单词时将作为建议。但我不确定如何通过多个表检查它。我的概念是基于健康的网站,所以每个部分都有不同的表格,如医院,医生,实验室,化学家等。我只需要指导我该怎么办?
答案 0 :(得分:0)
您可以使用联合查询返回文本框的自动填充数据。例如,您可以编写一个查询,搜索词可以执行此操作:
select hospitals.name as name
from hospitals
where hospitals.name like '%?%'
UNION
select doctors.lastname as name
from doctors
where doctors.lastname like '%?%'
UNION
select laboratories.labname as name
from laboratories
where laboratories.labname like '%?%'
UNION
...
但要小心:这种性能可能会快速下降,特别是对于"包含"像上面的例子一样搜索(like '%?%'
)
更快的查询将是"以"开头。这会将上面查询中的like子句更改为like '?%'