Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте.
Есть четыре-пять двухзначных чисел. Скажите пожалуйста, как оптимальней хранить данные в такой ситуации?
Лучше создать для каждого столбец с TINYINT(2) или хранить все в одном столбце в виде строки VARCHAR(14) "00|00|00|00|00". Или может быть еще как-то?
Извлекаются данные всегда все вместе. То есть какое-то отдельное число выбирать нет необходимости.
Неактивен
Здравствуйте. Хранить в виде строки - обычно очень плохое решение. Проще если что собрать эту строку с помощью group_concat. Скорее действительно столбцы с TinyInt. А какие запросы планируются?
Неактивен
Запросы частые и простые SELECT, UPDATE (или что-то еще имеется ввиду?)
Число записей около 100000.
Неактивен
Я имел в виду конкретные SELECT'ы, из этого нужно исходить при выборе структуры данных. Какие запросы планируются на запуск наиболее часто? Если данные всегда нужны в виде 00|00|00|00|00, то можно и строкой, если же форматирование будет различаться или планируется какая-то арифметика (допустим сложить все числа в рамках одной строки), то лучше разделить. И подозреваю, что стоит проиндексировать это поле (поля).
Неактивен
Арифметических операций особо никаких.
Числа - это данные при окончании игры, такие как "количество попаданий по цели", "количество промахов", "количество пропущенных целей", "общее число показаных мишеней", "в среднем очков за попадание".
Завершилась игра, сверяется результат, если он больше того, который в БД, то все эти параметры перезаписываются в соответствии с новым рекордом. Это касаемо UPDATE. Ну а SELECT - при просмотре анкеты игрока в виде статистических данных.
Отредактированно 400kg (11.03.2012 01:37:29)
Неактивен