我有一个搜索工具,但希望能够不允许搜索任何东西,而只是列出类别的项目。很标准的东西。
因此,当用户不输入任何搜索词,只选择一个类别时,我希望seach能找到所有具有“cat id=1”的内容。
我正在尝试下面的方法,我已经尝试了一些不同的方法,但是没有乐趣,如果我能帮上忙的话,我真的不想为不同的问题编写不同的查询。
我正在搜索的表在名为“title”的列上有一个全文索引,我正在尝试:

select col_name from tablename where (MATCH(title) AGAINST ('*' IN BOOLEAN MODE))

但是根本没有结果,这个通配符允许吗?

最佳答案

使用*不会有帮助。查看MySQLs站点的用法:
MATCH()使用逗号分隔的列表来命名要搜索的列。获取要搜索的字符串和指示要执行的搜索类型的可选修饰符。搜索字符串必须是文本字符串,而不是变量或列名。
如果用户没有输入搜索条件,您不应该省略那个特定的WHERE条件吗?

关于mysql - mysql匹配通配符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10076027/

10-13 22:23