It does, but that is not always an option. What if you shared personal information on a server you no longer have access to? Your only option is to wait a week for your data export and then wait another 2-3 weeks for a support ticket to get to the stage of threatening Discord into actually removing individual messages. What if you're being stalked? What if you said something incridebly dumb on a server you assumed was limited to very specific people? A month to removal is untenable. Discord needs searchable dashboard that allows one-click removal.
Discord considers all servers public, not because they actually are (many are for friend groups or even classes etc.), but because that'd mean your consent for keeping any message you send is in question whenever someone is invited to a guild you were not expecting there. Their argument against removal is always "following public conversations is in the public interest". Any European court would tell them to fuck off if someone finally sued them over ignoring GDPR requests, because in the end most Discord servers (absolute numbers, not by volume) can not be considered public.
Not only that, Discord communities are all invite-only, even the discoverable ones are technically invite-only (discoverability process of Discord requires a permanent invite).
> Discord needs searchable dashboard that allows one-click removal.
The thing is there is no user→message mappings stored in their database. The data structures are designed for message→user traversal. Nothing like Facebook's user activity log.
[0]: https://blog.discord.com/how-discord-stores-billions-of-mess...