3

我正在尝试使用 PHP 和 mysql 数据库为 Wordpress 站点构建一个简单的自定义搜索,该数据库将返回来自许多不同表的结果,例如GroupsUsers并且Sites每个表的数据都与正在搜索的另一个表无关。我的目标是构建类似于 Facebook 的它,它根据结果类型对结果进行分组。

我已经构建了单独的查询,但我坚持如何将它们全部联系在一起,以便我可以过滤结果类型并像 Facebook 一样对它们进行相应的分组。有没有一种简单的方法可以判断哪个表格结果来自哪个表格结果,或者它会完全朝着错误的方向前进?我对mysql知之甚少,无法了解最佳实践。这是我正在运行的示例查询:

SELECT 
    name, slug
FROM 
    ".$bp->groups->table_name."                              
WHERE 
    name LIKE '%".$search_string."%'
        OR 
    name = '%".$exp_string[0]."%'
        OR 
    name IN ('".$join_string."');
4

1 回答 1

1

尝试这个:

SELECT 
    name, slug, '$bp->groups->table_name' as table
FROM 
    ".$bp->groups->table_name."                              
WHERE 
    name LIKE '%".$search_string."%'
        OR 
    name = '%".$exp_string[0]."%'
        OR 
    name IN ('".$join_string."');

这应该将表名输出到结果中。我不知道你以后可能想如何分组..

于 2012-08-28T15:57:12.710 回答