How to design the database of the game achievement system, please take a look at this table?

recently, I"m going to do a Mini Game. When it comes to the achievement system for the first time, I read some materials and make a whole table by myself, but I don"t like it. I always feel strange. Please give me some advice.

  • first of all, achievement is a kind of achievement, such as upgrade achievement, number of competitions achievement. Connect the player table, and the progress field is the total progress of this type of achievement. This table is mainly used to mount the user"s behavior monitoring and record the progress of the achievement.
  • then sub_achievement the table is a sub-achievement, such as rising to 5 poles, 10 levels, 15 levels. status fields are incomplete, completed, and received.
  • and two xxx_type are achievement types.

always feels strange. sub_achievement whether to draw a root line to connect player , and whether this design is reasonable, the gods will give us some advice.

Mar.28,2021
MySQL Query : SELECT * FROM `codeshelper`.`v9_news` WHERE status=99 AND catid='6' ORDER BY rand() LIMIT 5
MySQL Error : Disk full (/tmp/#sql-temptable-64f5-1b356e0-2bfad.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
MySQL Errno : 1021
Message : Disk full (/tmp/#sql-temptable-64f5-1b356e0-2bfad.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
Need Help?