Sobes.tech
Middle

Comment compter les paires uniques de valeurs en SQL lorsque les user_id et device_id sont répétés?

sobes.tech IA

Réponse de l'IA

Pour compter le nombre de paires uniques (user_id, device_id) en SQL, en tenant compte du fait que user_id et device_id peuvent se répéter, il faut utiliser la construction avec COUNT(DISTINCT ...). Par exemple :

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

Dans certains SGBD, comme PostgreSQL, cette syntaxe est supportée. Si votre SGBD ne supporte pas COUNT(DISTINCT) avec plusieurs colonnes, vous pouvez concaténer les valeurs en une seule chaîne :

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

Ou utiliser une sous-requête avec regroupement :

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

Cela vous donnera le nombre de combinaisons uniques de user_id et device_id.