Das Funktionsbeispiel, das Sie zeigen, ist eine Gespeicherte Funktion , kein UDF. Gespeicherte Funktionen in MySQL unterstützen keine variable Anzahl von Argumenten, wie @Enzino antwortete.
MySQL-UDFs werden in C oder C++ geschrieben, in dynamische Objektdateien kompiliert und dann mit einem andere Syntax von CREATE FUNCTION
.
Siehe http://dev.mysql.com/doc/ refman/5.5/en/adding-udf.html für Details zum Schreiben von UDFs. Aber ich weiß nicht, ob Sie dafür C/C++-Code schreiben wollen.
MySQL-UDFs unterstützen eine variable Anzahl von Argumenten. Tatsächlich akzeptieren alle UDFs implizit eine beliebige Anzahl von Argumenten, und es liegt an Ihnen als Programmierer zu bestimmen, ob die Anzahl und die Datentypen der angegebenen Argumente für Ihre Funktion gültig sind.
Die Verarbeitung von Funktionsargumenten in UDFs ist dokumentiert in http://dev .mysql.com/doc/refman/5.5/en/udf-arguments.html