diff --git a/src/services/drive/add-file.ts b/src/services/drive/add-file.ts
index 9eccfb125c..54d7f2d13a 100644
--- a/src/services/drive/add-file.ts
+++ b/src/services/drive/add-file.ts
@@ -201,13 +201,20 @@ async function upload(key: string, stream: fs.ReadStream | Buffer, type: string,
 }
 
 async function deleteOldFile(user: IRemoteUser) {
-	const oldFile = await DriveFiles.createQueryBuilder()
-		.select('file')
-		.where('file.id != :avatarId', { avatarId: user.avatarId })
-		.andWhere('file.id != :bannerId', { bannerId: user.bannerId })
-		.andWhere('file.userId = :userId', { userId: user.id })
-		.orderBy('file.id', 'DESC')
-		.getOne();
+	const q = DriveFiles.createQueryBuilder('file')
+		.where('file.userId = :userId', { userId: user.id });
+
+	if (user.avatarId) {
+		q.andWhere('file.id != :avatarId', { avatarId: user.avatarId });
+	}
+
+	if (user.bannerId) {
+		q.andWhere('file.id != :bannerId', { bannerId: user.bannerId })
+	}
+
+	q.orderBy('file.id', 'DESC');
+
+	const oldFile = await q.getOne();
 
 	if (oldFile) {
 		delFile(oldFile, true);