Sobes.tech
Middle

Como contar pares únicos de valores em SQL quando há user_id e device_id repetidos?

sobes.tech IA

Resposta da IA

Para contar o número de pares únicos (user_id, device_id) em SQL, considerando que user_id e device_id podem repetir-se, deve usar a construção com COUNT(DISTINCT ...). Por exemplo:

SELECT COUNT(DISTINCT user_id, device_id) AS unique_pairs_count
FROM your_table;

Em alguns SGBDs, como o PostgreSQL, pode usar exatamente essa sintaxe. Se o SGBD não suportar COUNT(DISTINCT) com várias colunas, pode concatenar os valores numa única string:

SELECT COUNT(DISTINCT CONCAT(user_id, '_', device_id)) AS unique_pairs_count
FROM your_table;

Ou usar uma subconsulta com agrupamento:

SELECT COUNT(*) AS unique_pairs_count
FROM (
  SELECT user_id, device_id
  FROM your_table
  GROUP BY user_id, device_id
) AS unique_pairs;

Isto permitirá obter o número de combinações únicas de user_id e device_id.