Хранение нескольких целочисленных значений в одном поле таблицы
Есть таблица, в которой храниться информация о товарах магазина. В поле similar хранятся id-шники похожих товаров той же таблицы в виде строки (например: "42,526,3542,62359", 0-64 штук).
Товаров достаточно много, пользователей на сайте много, обновляется поле "similar" часто. Поэтому похожие товары для пущего быстродействия хранятся в той же таблице.
CREATE TABLE `goods`(
`id` INT(9) UNSIGNED NOT NULL AUTO_INCREMENT,
`name` TEXT NULL DEFAULT NULL,
`price` FLOAT UNSIGNED NULL,
...
`similar` TEXT NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB;
Все работает хорошо и достаточно быстро. Но строковые значения занимают больше места, чем те же значения в INT-типе. Имеется ли возможность хранить несколько (0-64) целочисленных значений типа INT(4 бита) в одном поле таблицы InnoDB не строкой?
Создавать отдельную таблицу с id-шниками не предлагать.