If only some players lost XP but not data that is linked to them, it can happen because of settings for the played map. For example, playing a map with comp settings and then returning to pub settings. That could reset the XP from players who played on the map. On these cases, it is important to first take a look at the server log, the end of the previous map and the start of the next map. That can give some details of what has happened.
The ET server crashing, but not the actual server, can cause corruption to the db files. There is a very small window at the end of the maps when the db files are being updated. I would expect if that happened, it would result wider issues. The whole server crashing can corrupt the file system in any way as there can be data that is not actually written to the disk.
Another weird case that could happen is if the server time was changed to something in the far future. If the saved XP has time limit.
One thing you can try if you suspect the DB integrity is to perform dbcleanup. Make a backup first. Issue the command with rcon and it will perform it during the next intermiossion. The server log will hold all errors that it finds and if it fixes anything. But do make a backup of it first.