![]() |
0 Всего найдено: 4
Vlad-Abakan
Сообщение
03/02/2011 03:39
Копия темы
PHP/MySQL Выбор записей из MySQL в диапазоне дат В который раз получаю вопрос от начинающих товарищей, типа: у меня в базе есть таблица comments, в которой лежат комментарии. У нее есть поле comment_date, как мне выбрать комментарии в диапазоне минус 2 дня от, например, 01.02.2011? Проще говоря, нужны записи в диапазоне минус 2 дня от указанной даты (допустим она передается POST-ом) включительно. Средствами пхп эту задачу решить можно, но лучше воспользоваться средствами MySQL, у которой, в принципе, неплохой функционал для работы с датами/временем. Это не только весело, но и удобно. Итак, пример: Так наглядно, что даже комментарии не нужны. Хорошо и понятно про функции даты/времени MySQL расписано вот тут:
RiDDi
Сообщение
03/02/2011 06:13
Копия темы
Да, это весело, удобно и крайне нерационально. Классическая ошибка начинающих программистов. Функции обработки в условиях оправданы в использовании только тогда, когда данные изначально неизвестны и подставляются непосредственно из выборки. В противном случаи минимум это нелогично и ведет к нечитабельности кода, а максимум пустая трата ресурсов. В Вашем примере это как раз максимум MySQL будет выполнять функцию при сравнивании каждой строки таблицы хотя условие, по сути, относительно запроса есть константа. У Вас точно опыт 11 лет? ))
Vlad-Abakan
Сообщение
03/02/2011 18:06
Копия темы
Читабельность легко сравнить, если вы опишите получение начальной даты средствами пхп. Говоря о рациональности вообще, важно найти балланс между простотой реализации и занимаемыми ресурсами. Особенно это играет роль на начальных этапах разработки, когда важно сначала в сжатые сроки запустить проект, а затем, в случае его успеха, и заниматься оптимизацией. Я не вижу ничего страшного в использовании скуль функций/UDF, когда это может заменить много пхп кода, иногда на страницу, а следовательно сэкономить кучу времени и денег заказчика. Если разобраться, то в примере можно поругаться и на звездочку, и вообще. Хотя вы конечно правы, наверное на это стоило обратить внимание в тексте. Также касаемо данного примера речь идет не о нагруженной системе, которая проживет много лет и будет иметь большую и тяжелую базу, поэтому тут такая конструкция вполне оправдана. Тут главное что весело, и что удобно. Но, повторюсь, оговорить это стоило, спасибо что обратили внимание. Инфа 100%, я уже старый же ). Хотя душой молодой.
RiDDi
Сообщение
03/02/2011 18:44
Копия темы
0
ну, в принципе.. да ладно, какой старый в 33 года ) самый рассвет сил :) |
Выразить восторг, поругаться или предложить что-нибудь можно на форуме |
Для обсуждения этого сервиса так же есть темы на фрилансе по поиску , флудотопу ,и по удалённым сообщениям ,и по Актуальным/популярным темам , и по топу "кто кому больше наотвечал" |