Membuat Kueri SQL

Buat kueri SQL untuk menghitung dan mengurutkan login unik bulan lalu

Anda dapat membuat kueri model secara langsung dan menguji hasil yang ditampilkan saat menggunakan parameter value yang berbeda dengan Konsol Cloud, atau dengan memanggil Vertex AI API secara langsung.

Perintah Freeform

Pertimbangkan tabel dengan skema seperti yang dijelaskan di bawah ini.

  • Nama kolom - Deskripsi
  • Username - nama pengguna yang digunakan untuk login
  • LicenseType - Baik "MultiUse" atau "SingleUse"
  • LoginTime - Tanggal dan waktu peristiwa login

Sebagai pakar analisis data, silakan tulis kueri SQL untuk menampilkan daftar pengguna, jenis lisensi mereka, dan jumlah hari unik pengguna login selama 3 bulan terakhir. Urutkan data berdasarkan jumlah login tertinggi dalam sebulan hingga jumlah login terendah dalam sebulan.

Respons

WITH MonthlyLogins AS (
SELECT
Username,
LicenseType,
DATE_TRUNC('month', LoginTime) AS LoginMonth,
COUNT(DISTINCT DATE(LoginTime)) AS UniqueLoginDays
FROM your_table
WHERE LoginTime >= DATE_TRUNC('month', CURRENT_DATE - INTERVAL '3 month')
GROUP BY Username, LicenseType, LoginMonth
)
SELECT
Username,
LicenseType,
SUM(UniqueLoginDays) AS TotalUniqueLoginDays
FROM MonthlyLogins
GROUP BY Username, LicenseType
ORDER BY TotalUniqueLoginDays DESC;

Penjelasan:

  1. WITH MonthlyLogins AS (...): Metode ini menentukan Common Table Expression (CTE) bernama MonthlyLogins untuk menghitung hari login unik untuk setiap pengguna dan jenis lisensi dalam setiap bulannya.
  2. SELECT ... FROM your_table WHERE LoginTime >= ...: Fungsi ini akan memilih data yang relevan dari tabel Anda, dengan memfilter peristiwa login dalam 3 bulan terakhir.
  3. DATE_TRUNC('month', LoginTime) AS LoginMonth: Metode ini mengekstrak awal bulan dari kolom LoginTime dan meng-aliaskannya sebagai LoginMonth.
  4. COUNT(DISTINCT DATE(LoginTime)) AS UniqueLoginDays: Fungsi ini akan menghitung tanggal login yang berbeda dalam setiap bulan, sehingga memberi kami jumlah hari login yang unik.
  5. GROUP BY Username, LicenseType, LoginMonth: Ini mengelompokkan hasil menurut nama pengguna, jenis lisensi, dan bulan login.
  6. SELECT ... FROM MonthlyLogins GROUP BY Username, LicenseType: Ini akan memilih nama pengguna, jenis lisensi, serta menjumlahkan UniqueLoginDays untuk setiap pengguna dan jenis lisensi di semua bulan.
  7. ORDER BY TotalUniqueLoginDays DESC: Opsi ini mengurutkan hasil dalam urutan menurun berdasarkan jumlah total hari login unik.

Catatan:

  • Ganti your_table dengan nama tabel Anda yang sebenarnya.
  • Kueri ini mengasumsikan kolom LoginTime Anda merupakan jenis data stempel waktu atau tanggal dan waktu.
  • Fungsi DATE_TRUNC dapat bervariasi bergantung pada sistem database tertentu Anda.

Kueri ini akan memberi Anda daftar pengguna, jenis lisensi mereka, dan jumlah total hari unik tempat mereka login selama 3 bulan terakhir, diurutkan dari jumlah hari login yang tertinggi hingga terendah.

Model: gemini-1.5-flash-001
Suhu: 1
Token output maks: 8192
TopK: 40
TopP: 0,95