Maison >base de données >tutoriel mysql >Comment trouver des utilisateurs avec plusieurs paiements le même jour en utilisant le même numéro de compte et des codes postaux distincts ?

Comment trouver des utilisateurs avec plusieurs paiements le même jour en utilisant le même numéro de compte et des codes postaux distincts ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-08 21:57:02703parcourir

How to Find Users with Multiple Payments on the Same Day Using the Same Account Number and Distinct ZIP Codes?

Requête SQL pour identifier plusieurs paiements

Les requêtes de base de données sont essentielles pour l'analyse des données. Cet exemple se concentre sur la table PAYMENT, contenant les identifiants utilisateur, les numéros de compte, les codes postaux et les dates de paiement. L'objectif est d'identifier les utilisateurs qui ont effectué plusieurs paiements le même jour en utilisant le même numéro de compte mais à partir de codes postaux différents.

Nous pouvons y parvenir en utilisant la clause HAVING de SQL, qui filtre les résultats groupés. Voici une requête pour y parvenir :

<code class="language-sql">SELECT
  user_id,
  account_no,
  date,
  COUNT(*) AS payment_count
FROM
  (SELECT DISTINCT user_id, account_no, zip, date FROM payment) AS distinct_payments
GROUP BY
  user_id,
  account_no,
  date
HAVING
  COUNT(*) > 1;</code>

Cette requête utilise d'abord une sous-requête (distinct_payments) pour éliminer les entrées en double basées sur user_id, account_no, zip et date. La requête principale regroupe ensuite les enregistrements restants par user_id, account_no et date, en comptant les paiements pour chaque groupe. La clause HAVING garantit que seuls les groupes avec plus d'un paiement (indiquant plusieurs paiements provenant de différents codes postaux le même jour) sont renvoyés. La colonne payment_count indique le nombre de paiements pour chaque utilisateur éligible.

Cette approche identifie efficacement les activités suspectes dans lesquelles un utilisateur peut utiliser plusieurs emplacements pour effectuer des transactions le même jour avec le même compte.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn