

 Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting [ blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/) yang diterbitkan pada 30 Juni 2025. 

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

# fungsi OBJECT\_TRANSFORM
<a name="r_object_transform_function"></a>

Mengubah objek SUPER.

## Sintaksis
<a name="r_object_transform_function-synopsis"></a>

```
OBJECT_TRANSFORM(
  input
  [KEEP path1, ...]
  [SET
    path1, value1,
    ...,  ...
  ]
)
```

## Argumen
<a name="r_object_transform_function-arguments"></a>

*masukan*  
Ekspresi yang menyelesaikan objek tipe SUPER.

*JAGA*  
Semua nilai *jalur* yang ditentukan dalam klausa ini disimpan dan dibawa ke objek output.  
Klausul ini opsional.

*jalur1*, *jalan2*,...  
Literal string konstan, dalam format komponen jalur kutip ganda yang dibatasi oleh periode. Misalnya, `'"a"."b"."c"'` adalah nilai jalur yang valid. Ini berlaku untuk parameter jalur di kedua klausa KEEP dan SET.

*SET*  
*jalur* dan pasangan *nilai* untuk memodifikasi jalur keluar atau menambahkan jalur baru, dan mengatur nilai jalur itu di objek output.  
Klausul ini opsional.

*value1, *value2**,...  
Ekspresi yang menyelesaikan nilai tipe SUPER. Perhatikan bahwa tipe numerik, teks, dan Boolean dapat diselesaikan ke SUPER.

## Jenis pengembalian
<a name="r_object_transform_function-returns"></a>

`SUPER`

## Catatan penggunaan
<a name="r_object_transform_function-usage-notes"></a>

OBJECT\_TRANSFORM mengembalikan objek tipe SUPER yang berisi nilai jalur dari *masukan* yang ditentukan dalam KEEP dan pasangan *jalur* dan *nilai* yang ditentukan dalam SET. 

*Jika KEEP dan SET kosong, OBJECT\_TRANSFORM mengembalikan input.*

Jika *input* bukan *objek* tipe SUPER, OBJECT\_TRANSFORM mengembalikan *masukan*, terlepas dari nilai KEEP atau SET.

## Contoh
<a name="r_object_transform_function-example"></a>

Contoh berikut mengubah objek SUPER menjadi objek SUPER lain.

```
CREATE TABLE employees (
    col_person SUPER
);

INSERT INTO employees
VALUES
    (
        json_parse('
            {
                "name": {
                    "first": "John",
                    "last": "Doe"
                },
                "age": 25,
                "ssn": "111-22-3333",
                "company": "Company Inc.",
                "country": "U.S."
            }
        ')
    ),
    (
        json_parse('
            {
                "name": {
                    "first": "Jane",
                    "last": "Appleseed"
                },
                "age": 34,
                "ssn": "444-55-7777",
                "company": "Organization Org.",
                "country": "Ukraine"
            }
        ')
    )
;

SELECT
    OBJECT_TRANSFORM(
        col_person
        KEEP
            '"name"."first"',
            '"age"',
            '"company"',
            '"country"'
        SET
            '"name"."first"', UPPER(col_person.name.first::TEXT),
            '"age"', col_person.age + 5,
            '"company"', 'Amazon'
    ) AS col_person_transformed
FROM employees;
    
--This result is formatted for ease of reading.
                  col_person_transformed
-------------------------------------------------------------
{
    "name": {
        "first": "JOHN"
    },
    "age": 30,
    "company": "Amazon",
    "country": "U.S."
}
{
    "name": {
        "first": "JANE"
    },
    "age": 39,
    "company": "Amazon",
    "country": "Ukraine"
}
```