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 di parametro diversi con la console Cloud o chiamando direttamente l'API Vertex AI.
Considera una tabella con lo schema descritto di seguito.
Nome colonna - Descrizione
Nome utente: il nome utente dell'utente che ha eseguito l'accesso.
LicenseType: può essere "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 tipi di licenza e il numero di giorni unici in cui l'utente ha eseguito l'accesso negli ultimi 3 mesi di calendario. Ordina i dati dal 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 AccessiMensili AS (...): definisce un'espressione tabella comune (CTE) denominata MonthlyLogins per calcolare i giorni di accesso univoci per ogni utente e tipo di licenza in ogni mese.
SELECT ... FROM tua_tabella WHERE OraLogin >= ...: seleziona i dati pertinenti dalla tabella, filtrando per gli eventi di accesso negli ultimi 3 mesi.
DATE_TRUNC('month', LoginTime) AS LoginMonth estrae l'inizio del mese dalla colonna LoginTime e lo assegna come LoginMonth.
CONTA.DISTINTI(DATA(DataAcceso)) COME GiorniAccediUnici: conteggia le date distinte degli accessi 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: seleziona il nome utente, il tipo di licenza e somma UniqueLoginDays per ogni utente e tipo di licenza in tutti i mesi.
ORDER BY TotalUniqueLoginDays DESC: ordina i risultati in ordine decrescente in base al numero totale di giorni di accesso univoci.
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 fornisce un elenco di utenti, i tipi di licenza e il numero totale di giorni univoci in cui hanno eseguito l'accesso negli ultimi tre mesi, ordinati dal numero più alto al più basso di giorni di accesso.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2024-10-14 UTC."],[],[]]