CloudTrail Kendala Lake SQL - AWS CloudTrail

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

CloudTrail Kendala Lake SQL

CloudTrail Kueri danau adalah string SQL. Bagian ini memberikan informasi tentang fungsi, operator, dan skema yang didukung.

Hanya SELECT pernyataan yang diizinkan. Tidak ada string kueri yang dapat mengubah atau mengubah data.

Sintaks CloudTrail Lake untuk SELECT pernyataan adalah sebagai berikut. ID penyimpanan data peristiwa — bagian ID dari ARN penyimpanan data peristiwa — ditentukan untuk nilainya. FROM

SELECT [ DISTINCT ] columns [ Aggregate ] [ FROM table event_data_store_ID] [ WHERE columns [ Conditions ] ] [ GROUP BY columns [ DISTINCT | Aggregate ] ] [ HAVING columns [ Aggregate | Conditions ] ] [ ORDER BY columns [ Aggregate | ASC | DESC | NULLS | FIRST | LAST ] [ LIMIT [ INT ] ]

CloudTrail Lake mendukung semua SELECT pernyataan, fungsi, dan operator Presto SQL yang valid. Untuk informasi selengkapnya tentang fungsi dan operator SQL yang didukung, lihat Fungsi dan Operator di situs web dokumentasi Presto.

CloudTrail Konsol menyediakan sejumlah contoh kueri yang dapat membantu Anda mulai menulis kueri Anda sendiri. Untuk informasi selengkapnya, lihat Lihat contoh kueri dengan konsol CloudTrail .

Fungsi, kondisi, dan bergabung dengan operator yang didukung

Fungsi yang didukung

CloudTrail Danau mendukung semua fungsi Presto. Untuk informasi selengkapnya tentang fungsi yang didukung, lihat Fungsi dan Operator di situs web dokumentasi Presto.

CloudTrail Danau tidak mendukung INTERVAL kata kunci.

Operator kondisi yang didukung

Berikut ini adalah operator kondisi yang didukung.

AND OR IN NOT IS (NOT) NULL LIKE BETWEEN GREATEST LEAST IS DISTINCT FROM IS NOT DISTINCT FROM < > <= >= <> != ( conditions ) #parenthesised conditions

Operator bergabung yang didukung

Berikut ini adalah JOIN operator yang didukung. Untuk informasi selengkapnya tentang menjalankan kueri multi-tabel, lihat. Dukungan kueri multi-tabel tingkat lanjut

UNION UNION ALL EXCEPT INTERSECT LEFT JOIN RIGHT JOIN INNER JOIN

Dukungan kueri multi-tabel tingkat lanjut

CloudTrail Lake mendukung bahasa kueri tingkat lanjut di beberapa penyimpanan data acara.

Untuk menjalankan kueri Anda, gunakan start-query perintah di file AWS CLI. Berikut ini adalah contoh, menggunakan salah satu contoh kueri di bagian ini.

aws cloudtrail start-query --query-statement "Select eventId, eventName from EXAMPLEf852-4e8f-8bd1-bcf6cEXAMPLE UNION Select eventId, eventName from EXAMPLEg741-6y1x-9p3v-bnh6iEXAMPLE UNION ALL Select eventId, eventName from EXAMPLEb529-4e8f9l3d-6m2z-lkp5sEXAMPLE ORDER BY eventId LIMIT 10;"

Responsnya adalah QueryId string. Untuk mendapatkan status kueri, jalankandescribe-query, menggunakan QueryId nilai yang dikembalikan olehstart-query. Jika kueri berhasil, Anda dapat menjalankan get-query-results untuk mendapatkan hasil.

UNION|UNION ALL|EXCEPT|INTERSECT

Berikut ini adalah contoh query yang menggunakan UNION dan UNION ALL untuk menemukan peristiwa dengan ID acara dan nama acara mereka di tiga toko data acara, EDS1, EDS2, dan EDS3. Hasilnya dipilih dari setiap penyimpanan data peristiwa terlebih dahulu, kemudian hasilnya digabungkan, diurutkan berdasarkan ID peristiwa, dan dibatasi hingga sepuluh peristiwa.

Select eventId, eventName from EDS1 UNION Select eventId, eventName from EDS2 UNION ALL Select eventId, eventName from EDS3 ORDER BY eventId LIMIT 10;

LEFT|RIGHT|INNER JOIN

Berikut ini adalah contoh kueri yang digunakan LEFT JOIN untuk menemukan semua peristiwa dari penyimpanan data peristiwa bernamaeds2, dipetakan keedsB, yang cocok dengan yang ada di penyimpanan data peristiwa utama (kiri),edsA. Peristiwa yang dikembalikan terjadi pada atau sebelum 1 Januari 2020, dan hanya nama acara yang dikembalikan.

SELECT edsA.eventName, edsB.eventName, element_at(edsA.map, 'test') FROM eds1 as edsA LEFT JOIN eds2 as edsB ON edsA.eventId = edsB.eventId WHERE edsA.eventtime <= '2020-01-01' ORDER BY edsB.eventName;