

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Kueri menggunakan sintaks kueri UDF
<a name="udf-query-syntax"></a>

`USING EXTERNAL FUNCTION`Klausa menentukan UDF atau beberapa UDFs yang dapat direferensikan oleh `SELECT` pernyataan berikutnya dalam kueri. Anda perlu nama metode untuk UDF dan nama fungsi Lambda yang host UDF. Di tempat nama fungsi Lambda, Anda dapat menggunakan Lambda ARN. Dalam skenario lintas akun, Lambda ARN diperlukan.

## Sinopsis
<a name="udf-synopsis"></a>

```
USING EXTERNAL FUNCTION {{UDF_name}}({{variable1}} {{data_type}}[, {{variable2}} {{data_type}}][,...])
RETURNS {{data_type}}
LAMBDA '{{lambda_function_name_or_ARN}}'
[, EXTERNAL FUNCTION {{UDF_name2}}({{variable1}} {{data_type}}[, {{variable2}} {{data_type}}][,...]) 
RETURNS {{data_type}} 
LAMBDA '{{lambda_function_name_or_ARN}}'[,...]]
SELECT  [...] {{UDF_name}}({{expression}}) [, {{UDF_name2}}({{expression}})] [...]
```

## Parameter
<a name="udf-parameters"></a>

**MENGGUNAKAN FUNGSI EKSTERNAL {{UDF\_name}} ({{variable1}}{{data\_type}}[, {{variable2}}{{data\_type}}] [,...])**  
{{UDF\_name}}menentukan nama UDF, yang harus sesuai dengan metode Java dalam fungsi Lambda yang direferensikan. Masing-masing {{variable data\_type}} menentukan variabel bernama dan tipe data yang sesuai yang UDF menerima sebagai input. {{data\_type}}Harus menjadi salah satu tipe data Athena yang didukung yang tercantum dalam tabel berikut dan peta ke tipe data Java yang sesuai.      
[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/athena/latest/ug/udf-query-syntax.html)

**PENGEMBALIAN {{data\_type}}**  
`data_type`menentukan tipe data SQL bahwa UDF kembali sebagai output. Tipe data Athena yang tercantum dalam tabel di atas didukung. Untuk tipe `DECIMAL` data, gunakan sintaks `RETURNS DECIMAL({{precision}}, {{scale}})` di mana {{precision}} dan {{scale}} adalah bilangan bulat.

**LAMBDA '' {{lambda\_function}}**  
{{lambda\_function}}menentukan nama fungsi Lambda yang akan dipanggil saat menjalankan UDF.

**PILIH [...] {{UDF\_name}}({{expression}}) [...]**  
`SELECT`Kueri yang meneruskan nilai ke UDF dan mengembalikan hasilnya. {{UDF\_name}}menentukan UDF untuk digunakan, diikuti oleh {{expression}} yang dievaluasi untuk lulus nilai. Nilai-nilai yang dilewatkan dan dikembalikan harus sesuai dengan tipe data yang sesuai ditentukan untuk UDF di`USING EXTERNAL FUNCTION`Klausul.

### Contoh
<a name="udf-examples"></a>

Misalnya kueri berdasarkan kode [UDFHandlerAthena](https://github.com/awslabs/aws-athena-query-federation/blob/master/athena-udfs/src/main/java/com/amazonaws/athena/connectors/udfs/AthenaUDFHandler.java) .java, lihat GitHub halaman konektor UDF Amazon GitHub [Athena](https://github.com/awslabs/aws-athena-query-federation/tree/master/athena-udfs). 