Если вы не работаете с устаревшей базой данных и можете изменить схему, я бы посоветовал не использовать перечисление с целочисленной поддержкой. Использование перечисления на основе строки сделает вашу базу данных читаемой без кода приложения. Затем, когда вы добавляете новые значения в ваш код, вам не нужно документировать, что означают целые числа.
Вместо того, чтобы определять перечисление, как вы, определите его как строки:
enum sound: {
bark: 'bark',
meow: 'meow',
moo: 'moo'
}
И убедитесь, что столбец в базе данных также является строкой.
Теперь вы получаете все преимущества enum без хлопот с целыми числами в базе данных. Ваш запрос также будет работать как есть и давать результат, который вы запрашивали.
Пока столбец проиндексирован, запрос в целом так же быстр, как и целое число. Это займет всего несколько байт пространства.
Если вы хотите применить значения на уровне базы данных, можно также рассмотреть перечисление postgres.