Я работаю над базой данных MySQL, которая создаст список «Сегодня в» и отправит его подписчикам. Мне интересно, лучше ли использовать тип данных DATETIME в начальном и конечном полях или два имеют два столбца: startDate и startTime (с соответствующими типами данных). Моя первая мысль была использовать DATETIME, но это делает последующее использование системы немного неудобно, так как вы не можете больше не писать:Лучше использовать два столбца или DATETIME
SELECT * FROM event_list WHERE startAt='2009-04-20';
Вместо этого, лучше всего я нашел:
SELECT * FROM event_list WHERE startAt LIKE '2009-04-20%';
и Мне не нравится взлом или его потенциальное влияние на производительность.
Использование функции в предложении WHERE делает вероятным, что оптимизатор не будет использовать какой-либо индекс в startAt. – dkretz
Согласовано. В вопросе упоминается производительность, поэтому, вероятно, они хотят избежать сканирования таблицы! – NickZoic