SQL을 사용하여 동일한 계정에서 일일 결제가 여러 번 이루어지는 사용자 찾기
이 가이드에서는 동일한 계좌 번호, 다른 우편번호를 사용하여 같은 날에 두 번 이상 결제한 사용자를 식별하는 방법을 보여줍니다. PAYMENT
, user_id
, account_no
및 zip
열이 포함된 date
테이블을 사용하겠습니다.
초기 SQL 쿼리:
이 쿼리는 계정별로 하루에 여러 번 결제하는 사용자를 식별합니다.
<code class="language-sql">SELECT user_id, COUNT(*) AS payment_count FROM PAYMENT GROUP BY account_no, user_id, date HAVING COUNT(*) > 1;</code>
계좌 번호, 사용자 ID 및 날짜별로 결제를 그룹화한 다음 두 번 이상 결제한 그룹만 표시하도록 필터링합니다.
고유 우편번호에 대한 향상된 쿼리:
복수 결제및 고유한 우편번호를 사용하는 사용자만 식별되도록 하기 위해 다음 하위 쿼리를 사용합니다.
<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>
이 하위 쿼리(distinct_payments
)는 먼저 사용자, 계정, 우편번호 및 날짜의 고유한 조합을 선택합니다. 그런 다음 기본 쿼리는 이 하위 집합을 그룹화하고 필터링하여 여러 결제 및 고유한 우편번호가 있는 레코드만 반환되도록 보장합니다. AS distinct_payments
절은 명확성을 위해 하위 쿼리에 별칭을 할당합니다.
위 내용은 SQL을 사용하여 동일한 계정에서 여러 일일 결제를 수행하는 사용자를 식별하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!