【发布时间】:2013-09-02 07:26:09
【问题描述】:
我想在 MySQL 中创建一个存储函数。这个函数必须包含一个 group_concat 函数。
这是我当前的 SQL 查询:
DELIMITER $$
CREATE FUNCTION SprachenListe(
paramTable VARCHAR( 50 )
) RETURNS TEXT DETERMINISTIC BEGIN
DECLARE Ausgabe TEXT;
SET @tableName = paramTable;
EXECUTE IMMEDIATE CONCAT('SELECT GROUP_CONCAT( DISTINCT ', @tableName.Sprache, ' ORDER
BY ',@tableName.Sprache,' SEPARATOR ','/',' ) INTO ',Ausgabe,' FROM ',@tableName);
RETURN(Ausgabe);
END ;
$$
DELIMITER ;
这是错误信息:
#1064 - 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以在第 6 行的 'CONCAT('SELECT GROUP_CONCAT( DISTINCT ', @tableName.Sprache, ' ORDER BY ',@table' 附近使用正确的语法
有人有想法吗?
【问题讨论】:
-
您可能来自 Oracle。 MySQL 中没有立即执行。这可能会有所帮助:stackoverflow.com/questions/7567277/….
标签: php mysql sql group-concat stored-functions