J'ai une table comme celle-ci ;
+----+---------+-------------+
| id | user_id | screenWidth |
+----+---------+-------------+
| 1 | 1 | 1366 |
| 2 | 1 | 1366 |
| 3 | 1 | 1366 |
| 4 | 1 | 1366 |
| 5 | 2 | 1920 |
| 6 | 2 | 1920 |
| 7 | 3 | 1920 |
| 8 | 4 | 1280 |
| 9 | 5 | 1280 |
| 10 | 6 | 1280 |
+----+---------+-------------+
Ainsi que de nombreuses autres données. Ces données pourraient être normalisées si nécessaire ; à l'origine, je ne pensais pas en avoir besoin, mais je devrais peut-être le faire. Quoi qu'il en soit,
Je voudrais une requête qui ne compte les valeurs de screenWidth qu'une seule fois par utilisateur, de sorte que la sortie ressemblerait à :
+-------------+-------+
| screenWidth | count |
+-------------+-------+
| 1366 | 1 |
| 1920 | 2 |
| 1280 | 3 |
+-------------+-------+
Plutôt que de compter 1366 comme 4, cela éviterait que les gros utilisateurs ne faussent les données.
Existe-t-il un moyen d'écrire une requête pour faire cela ?