FUNCTION deyimi, tek bir betik içinde geçici bir SQL kullanıcı tanımlı işlevi (UDF) oluşturur. MaxCompute kataloğunda kalıcı bir işlev kaydetmeden, özel amaçlı bir sorguda veya betikte yeniden kullanılabilir SQL mantığına ihtiyaç duyduğunuzda bu deyimi kullanın.
Proje içindeki tüm sorguların çağırabileceği kalıcı bir UDF için bunun yerine CREATE SQL FUNCTION deyimini kullanın.
Sınırlamalar
Betik modu gereklidir. UDF'leri SQL script mode içinde tanımlayın. Ortak SQL düzenleme modunda bir UDF tanımlamak hataya neden olur.
Kapsam yalnızca tanımlandığı betikle sınırlıdır. Geçici bir SQL UDF'i MaxCompute meta veri sisteminde depolanmaz. İşlev listesinde görünmez ve diğer sorgu ortamlarından çağrılamaz.
Giriş parametresi veri türleri MaxCompute tarafından desteklenen türler olmalıdır. Tam liste için MaxCompute V2.0 data type edition sayfasına bakın. UDF'i çağırırken bağımsız değişken türleri, tanımda belirtilen türlerle tam olarak eşleşmelidir.
İzinler. Bir SQL UDF'i oluşturmak, sorgulamak, çağırmak veya silmek için Alibaba Cloud hesabınızda işlev düzeyinde izinler gerekir. Ayrıntılar için MaxCompute permissions sayfasına bakın.
Söz dizimi
function <function_name>(@<parameter_in1> <datatype>[, @<parameter_in2> <datatype>...])
[returns @<parameter_out> <datatype>]
as [begin]
<function_expression>
[end];
Parametreler
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Örnekler
Bir tamsayıya 1 ekleyen bir işlev tanımlama
function my_add(@a BIGINT) as @a + 1;
İlgili deyimler
CREATE SQL FUNCTION: MaxCompute meta veri sisteminde depolanan kalıcı bir SQL UDF'i oluşturur ve proje içindeki tüm sorgular tarafından çağrılabilir.
DESC FUNCTION: Kalıcı olarak depolanan bir UDF hakkında ad, sahip, oluşturma zamanı, sınıf adı ve kaynak listesi gibi ayrıntıları döndürür. Geçici SQL UDF'leri bu deyimle sorgulanamaz.
DROP FUNCTION: Mevcut bir UDF'i bir MaxCompute projesinden siler.
SELECT FUNCTION: Bir SQL UDF'i çağırır. Geçici bir SQL UDF'i yalnızca tanımlandığı betikte çağrılabilir.
LIST FUNCTIONS: Bir projede kayıtlı olan tüm işlevleri listeler.