Bedeutung und Statistik von "aufräumen inaktiver Nutzer nach Tagen"

Dies wird wie folgt beschrieben:

Anzahl der Tage, bevor ein inaktiver Benutzer (Vertrauensstufe 0 ohne Beiträge) entfernt wird. Um die Bereinigung zu deaktivieren, setzen Sie auf 0.

Können Sie bestätigen, dass dies die Kriterien sind (TL0 und 0 Beiträge)? Wird berücksichtigt, wann sie sich das letzte Mal angemeldet und/oder einen Beitrag gelesen haben, oder beginnt die Anzahl der Tage ab der Registrierung?

Gibt es eine Data Explorer-Abfrage, um TL0-Benutzer mit 0 Beiträgen zusammen mit der entsprechenden Anzahl von Tagen anzuzeigen? Dies würde eine Vorstellung vom Effekt der Wahl bestimmter Zahlen für diese Einstellung geben. Danke.

Es gibt einige zusätzliche Kriterien: Administratoren und Moderatoren werden nicht gelöscht
Außerdem werden das Datum des letzten Besuchs und das Registrierungsdatum überprüft.

Ich denke, etwas wie dies sollte die Anzahl der zu löschenden Benutzer zurückgeben

-- [params]
-- int :active_days_ago

SELECT COUNT(*)
FROM users
WHERE last_posted_at IS NULL
  AND trust_level = 0
  AND admin = false
  AND moderator = false
  AND created_at < CURRENT_DATE - :active_days_ago
  AND (last_seen_at < CURRENT_DATE - :active_days_ago OR last_seen_at IS NULL)
  AND NOT EXISTS (
    SELECT 1 FROM posts WHERE posts.user_id = users.id
  )
  AND NOT EXISTS (
    SELECT 1 FROM topics WHERE topics.user_id = users.id
  )

Um zu sehen, welche Benutzer gelöscht würden, sollte dies funktionieren

-- [params]
-- int :active_days_ago

SELECT
    id as user_id,
    DATE_PART('day', CURRENT_DATE - created_at) AS days_since_created,
    DATE_PART('day', CURRENT_DATE - last_seen_at) AS days_since_seen
FROM users
WHERE last_posted_at IS NULL
  AND trust_level = 0
  AND admin = false
  AND moderator = false
  AND created_at < CURRENT_DATE - :active_days_ago
  AND (last_seen_at < CURRENT_DATE - :active_days_ago OR last_seen_at IS NULL)
  AND NOT EXISTS (
    SELECT 1 FROM posts WHERE posts.user_id = users.id
  )
  AND NOT EXISTS (
    SELECT 1 FROM topics WHERE topics.user_id = users.id
  )
ORDER BY days_since_seen
4 „Gefällt mir“

Danke. Ich werde das versuchen.

Der Text der Admin-Einstellung muss aktualisiert werden, da er falsch ist.

Wovon hängt last_seen_at ab? Vom Einloggen oder vom (eingeloggt sein und) Ansehen einer beliebigen Seite des Forums?

Das ist es. Das letzte Mal, als sie aktiv im Forum waren.

1 „Gefällt mir“