Funktionsexemplet du visar är en Lagrad funktion , inte en UDF. Lagrade funktioner i MySQL stöder inte ett variabelt antal argument, som @Enzino svarade.
MySQL UDF:er skrivs i C eller C++, kompileras till dynamiska objektfiler och länkas sedan till MySQL-servern med en annan syntax för CREATE FUNCTION
.
Se http://dev.mysql.com/doc/ refman/5.5/en/adding-udf.html för detaljer om hur du skriver UDF:er. Men jag vet inte om du vill börja skriva C/C++-kod för att göra detta.
MySQL UDF:er stöder varierande antal argument. Faktum är att alla UDF:er implicit accepterar valfritt antal argument, och det är upp till dig som programmerare att avgöra om antalet och datatyperna för de angivna argumenten är giltiga för din funktion.
Bearbetning av funktionsargument i UDF:er dokumenteras i http://dev .mysql.com/doc/refman/5.5/en/udf-arguments.html