2010-09-24 1 views
0

У меня есть числовые данные с числами, представляющими событие, которое произошло. События могут быть общедоступными или частными. У меня есть 2 варианта, и я не знаю, какой из них использовать (быстрее).Что происходит быстрее в mysql, равном или большем числе в числовых столбцах?

  1. Я могу сделать 2 столбца, 1 - столбец событий, а значения - 1 ... 10. Другой - это столбец public/private smallint, в котором указано, является ли событие общедоступным или закрытым.

  2. Я могу сделать только один столбец и число частных событий от 1 до 10 и публичных событий от 100 ... 120. Поэтому я «спрятал» тип события в этот столбец.

Теперь я хочу, чтобы отфильтровать с выбором, конечно ... Я бы фильтровать первый подход как SELECT * FROM event_table WHERE EventType = 1

Я бы фильтровать второй подход, как: SELECT * из events_table WHERE EventID> 100

Теперь то, что я действительно хочу знать, - это числовое = условие (contant), любое более быстрое, чем < или> (конечно, я буду индексировать этот столбец!). При втором подходе мне понадобится меньше одного столбца. Я даже не уверен, что это хорошо или нет.

Любые советы будут рассмотрены.

Jerry

ответ

3

Я не уверен, если есть микро разница в производительности между этими двумя подходами (я сомневаюсь), но я бы определенно пойти на первый подход. Смешивание разных типов информации в одном столбце не является чем-то, что я бы рекомендовал.

+0

Thanx. Проблема в том, что если я помещаю данные в другой столбец, мне нужно передать другую информацию о типе или рассчитать его из идентификатора события. Тогда я дублирую информацию. – Jerry2

+0

Но вы хотели сказать, что использование> или <также быстро для целых индексированных столбцов? – Jerry2