Php 选择多行并连接成一行-在joomla中

Php 选择多行并连接成一行-在joomla中,php,mysql,joomla,Php,Mysql,Joomla,我在选择多行并将其作为一行检索时遇到问题。问题在于Joomla将来自userprofile的数据存储在两列中,这两列分别称为profile_key和profile_value。我想从名为“profile.li\u vid”、“profile.li\u kre”的列“profile\u key”中检索与列“profile\u value”对应的所有行,其中的值为“1” DB草稿 user_id | profile_key | profile_value 475 | profi

我在选择多行并将其作为一行检索时遇到问题。问题在于Joomla将来自userprofile的数据存储在两列中,这两列分别称为profile_key和profile_value。我想从名为“profile.li\u vid”、“profile.li\u kre”的列“profile\u key”中检索与列“profile\u value”对应的所有行,其中的值为“1”

DB草稿

user_id | profile_key        | profile_value
475     | profile.li_vid     | "1"
475     | profile.li_kre     | "1"
475     | profile.address1   | "1"
476     | profile.li_vid     | "1"
476     | profile.li_kre     | "1"
476     | profile.address1   | "1"
代码

当我以foreach循环的方式将它们回显到屏幕上时,它们在我的表中出现在单独的行中,因为代码逐行循环遍历每个查询结果。我想到了一个解决方案,将多行连接成一行,但如何实现呢?
我希望你能帮助我。

记住:默认情况下,GROUP_CONCAT()的字符限制为1024个

你可以使用mysqls
GROUP\u CONCAT
但我不知道如何在Joomla中使用。是的-我尝试过,但在选择行中遇到错误-你能用纯SQL发布你的查询吗?那我就可以帮你了。谢谢Daan-是的,在纯SQL中这是可能的-但是在Joomla中我遇到了麻烦!但是谢谢你的回复。
  $db = JFactory::getDbo(); 
    $query = $db->getQuery(true);
    $query
        ->select ($db->quoteName(array('a.id','a.name', 'b.profile_value','b.profile_key')))
        ->from ($db->quoteName('#__users','a'))
        ->where ($db->quoteName('b.profile_key') . " = " . $db->quote('profile.li%'))

        // ->where ($db->quote('profile_value') . " = \"1\" " )
        ->join('INNER', $db->quoteName('#__user_profiles','b').'ON('.$db->quoteName('a.id').'='.$db->quoteName('b.user_id').')')
        ->order($db->quoteName('a.name').'ASC')
     ;
    $db->setQuery($query);
    $rows = $db->loadObjectList();