Хорошим решением было бы использовать целое число, строящее значение для хранения следующим образом:
MAJOR * 10000 + MINOR * 100 + Revision
Предполагая, что каждое из них может находиться в диапазоне от 0..99.Если вы хотите перейти на 0..999, используйте
MAJOR * 1000000 + MINOR * 1000 + Revision
Это будет правильно отсортировать, легко запросить, будет компактным (1 столбец int), легко декомпозируется и даже может быть декомпозировано визуально.