Prova i modelli Gemini 1.5, i nostri più recenti modelli multimodali di Vertex AI, e scopri cosa puoi creare con una finestra di contesto dei token da 1 milione.Prova i modelli Gemini 1.5, i nostri più recenti modelli multimodali di Vertex AI, e scopri cosa puoi creare con una finestra di contesto dei token da 1 milione.
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Genera una query SQL per conteggiare e ordinare gli accessi univoci nell'ultimo mese
Puoi eseguire query direttamente su un modello e testare i risultati restituiti quando utilizzi valori parametro diversi con la console Cloud o chiamando direttamente l'API Vertex AI.
Considera una tabella con lo schema come descritto di seguito.
Nome colonna - Descrizione
Nome utente: il nome utente dell'utente che ha eseguito l'accesso
LicenseType: "MultiUse" o "SingleUse"
LoginTime: la data e l'ora dell'evento di accesso.
In qualità di esperto di analisi dei dati, scrivi una query SQL per mostrarmi l'elenco degli utenti, i loro tipi di licenza e il numero di giorni univoci in cui l'utente ha eseguito l'accesso negli ultimi tre mesi di calendario. Ordinalo per il numero più alto di accessi in un mese al numero più basso di accessi in un mese.
Risposta
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;
Spiegazione:
WITH MonthlyLogins AS (...): definisce un'espressione della tabella comune (CTE) denominata MonthlyLogins per calcolare i giorni di accesso univoci per ogni utente e il tipo di licenza all'interno di ogni mese.
SELECT ... FROM your_table WHERE LoginTime >= ...: seleziona i dati pertinenti dalla tabella, filtrando in base agli eventi di accesso degli ultimi 3 mesi.
DATE_TRUNC('month', LoginTime) AS LoginMonth: estrae l'inizio del mese dalla colonna LoginTime e lo fa come LoginMonth.
COUNT(DISTINCT DATE(LoginTime)) AS UniqueLoginDays: conteggia le singole date di accesso in ogni mese, fornendo il numero di giorni di accesso univoci.
GROUP BY Username, LicenseType, LoginMonth: raggruppa i risultati per nome utente, tipo di licenza e mese di accesso.
SELECT ... FROM MonthlyLogins GROUP BY Username, LicenseType (Nome utente e tipo di licenza): vengono selezionati il nome utente e il tipo di licenza e viene sommato il valore di UniqueLoginDays per ogni utente e tipo di licenza per tutti i mesi.
ORDER BY TotalUniqueLoginDays DESC: ordina i risultati in ordine decrescente in base al numero totale di giorni di accesso unico.
Nota:
Sostituisci your_table con il nome effettivo della tabella.
Questa query presuppone che la colonna LoginTime sia un tipo di dati con timestamp o data/ora.
La funzione DATE_TRUNC può variare a seconda del sistema di database specifico.
Questa query ti fornirà un elenco di utenti, i relativi tipi di licenza e il numero totale di giorni unici in cui hanno eseguito l'accesso negli ultimi tre mesi, ordinati dal numero più alto al più basso.