Heim >Backend-Entwicklung >PHP-Tutorial >So zählen und fragen Sie kontinuierliche Check-Ins und kumulative Check-Ins in MySQL ab

So zählen und fragen Sie kontinuierliche Check-Ins und kumulative Check-Ins in MySQL ab

WBOY
WBOYOriginal
2016-08-25 10:37:193154Durchsuche

Zwei Fragen: Fragen Sie zunächst die kumulative Anzahl der Anmeldungen innerhalb eines bestimmten Zeitraums ab (ähnlich wie bei Tieba kann sich jeder Benutzer einmal bei jeder Organisation anmelden, aber egal bei wie vielen Organisationen sich der Benutzer anmeldet, solange Er meldet sich bei einer Organisation an. Wenn Sie jeden Tag einchecken, zählen Sie die Anzahl der Tage, die Sie innerhalb des angegebenen Zeitintervalls eingecheckt haben.) Zweitens zählen Sie die längste Anzahl aufeinanderfolgender Check-in-Tage innerhalb eines bestimmten Zeitraums

Antwortinhalt:

Zwei Fragen: Fragen Sie zunächst die kumulative Anzahl der Anmeldungen innerhalb eines bestimmten Zeitraums ab (ähnlich wie bei Tieba kann sich jeder Benutzer einmal bei jeder Organisation anmelden, aber egal bei wie vielen Organisationen sich der Benutzer anmeldet, solange Er meldet sich bei einer Organisation an. Wenn Sie jeden Tag einchecken, zählen Sie die Anzahl der Tage, die Sie innerhalb des angegebenen Zeitintervalls eingecheckt haben.) Zweitens zählen Sie die längste Anzahl aufeinanderfolgender Check-in-Tage innerhalb eines bestimmten Zeitraums

Die erste besteht darin, die Zeit in Tage umzuwandeln (z. B. mit der Funktion TO_DAYS), und dann wacht DISTINCT auf.
Die zweite Methode ist bei der Verwendung von SQL etwas umständlich. Es ist besser, sie in der Anwendung zu berechnen

Erstens:

<code>select 用户, count(distinct 签到日期)
from table
where 签到日期 between 起始日期 and 结束日期
group by 用户
</code>

Der zweite Punkt:
MySQL unterstützt keine hierarchische Abfrage und SQL ist nicht einfach zu handhaben

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn