From 60a6a99380203330375b4f0ede3a1994b29e4fce Mon Sep 17 00:00:00 2001 From: Philipp Hofer Date: Sun, 3 May 2026 12:08:40 +0200 Subject: [PATCH] clean families; Fixes #1171 --- src/model/family.rs | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/model/family.rs b/src/model/family.rs index 3408214..8a0ed8f 100644 --- a/src/model/family.rs +++ b/src/model/family.rs @@ -93,11 +93,24 @@ GROUP BY family.id;" } pub async fn clean_families_without_members(db: &SqlitePool) { + sqlx::query( + "UPDATE user SET family_id = NULL +WHERE family_id IN ( + SELECT family_id FROM user + WHERE family_id IS NOT NULL + GROUP BY family_id + HAVING COUNT(*) = 1 +);", + ) + .execute(db) + .await + .unwrap(); + sqlx::query( "DELETE FROM family WHERE id NOT IN ( - SELECT DISTINCT family_id - FROM user + SELECT DISTINCT family_id + FROM user WHERE family_id IS NOT NULL );", ) -- 2.52.0