An additional method to find prior displaynames is querying the PostHistory table. It holds for some events a JSON blob with the userid and displayname at that time.
For these events the Text column hold info on the user that voted:
- 10 Close
- 11 Reopen
- 12 Deleted
- 13 Undeleted
- 14 Locked
- 15 Unlocked
- 19 Protected
- 20 Unprotected
- 35 Migrated away
Here is that SEDE query
;with voters as
(
Select users.UserId
, users.UserDisplayName
, CreationDate
From PostHistory
cross apply openjson(Text, '$.Voters')
with ( UserId int '$.Id'
, UserDisplayName nvarchar(150) '$.DisplayName') users
where posthistorytypeid in (10,11,12,13,14,15,19,20,35)
and Text is not null
and len(text) > 0
and users.userid = ##userid?1233251##
)
select UserDisplayName
, min(creationdate) [first seen]
, max(creationdate) [last seen]
from voters
group by UserDisplayName
order by min(creationdate) desc
Keep in mind SEDE is updated once a week on Sunday.
Use the educational SEDE Tutorial written by the awesome Monica Cellio.
Say "Hi" in SEDE chat.