【发布时间】:2012-04-27 17:10:09
【问题描述】:
当我使用group_concat 测试查询时,它可以正常工作并在行中输出正确的逗号分隔列表。但是,当我然后单击结果集底部的“导出”时,我收到一条错误消息 #1630 - FUNCTION <databasename>.group_concat does not exist.
似乎将对GROUP_CONCAT 的引用视为用户定义的函数。有没有办法正确限定函数名称,以便在导出时找到它?在不尝试使用group_concat 之前,我没有遇到导出问题。
这里是查询:
SELECT *, group_concat(distinct g.name) FROM `users` u
left join usergroupassoc a on u.userid = a.userid
left join usergroups g on a.usergroupid = g.usergroupid
where u.enddate is null and g.enddate is null group by u.userid
【问题讨论】:
-
它似乎对
group_concat和左括号之间的间距很敏感。您能否验证您正在运行的实际查询中没有空格?来源:dreamincode.net/forums/topic/247573-distinct -
这是一种可能性——我认为 phpmyadmin 在将查询传递给 MySql 之前正在对其进行转换。虽然它似乎没有在左括号前放置一个空格,但也许它正在做其他 MySql 不喜欢的事情。
-
您是否尝试过调查 MySQL 常规查询日志以确切了解 PHPMyAdmin 正在执行什么查询?
-
不错的主意。我会调查的。
-
是的。它确实在左括号之前插入了一个空格。臭虫。这可能只是我正在使用且无法更改的旧版 PhpMyAdmin 中的一个错误。啊。
标签: mysql sql phpmyadmin group-concat