Как хранить ID категорий в базе?
Для нормальных разработчиков, а не хипстеров, разъясняем:

"В колонке с типом JSON" - это не современный хайповый способ, а очень редкий вариант, которые следует применять не где попало как советует тов. Rsa97, а с большой осторожностью и только в предназначенных для этого случаях: а именно, когда структура хранимых данных не определена. 

В данном же случае необходимо использовать стандартный способ со связанной таблицей.  Поскольку при использовании стандартных методов хранения можно пользоваться всеми возможностями, которые предоставляет БД, такими как контроль целостности данных, компактность хранения, использование в индексах и так далее. Не говоря уже о простоте запросов и поддержке со стороны существующих библиотек.
Стандартно - в отдельной таблице связи многие-ко-многим.
Современный способ - в колонке с типом JSON.
Говнокод - в строке через запятую или другой разделитель.