![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 04.04.2011
Сообщений: 38
|
![]()
день добрый!
есть необходимость сравнения дат из бд. на данный момент формат такой - "год-месяц-день, часы:минуты". знаю, что вроде как sql позволяет сравнивать даты со строками, но насколько это удобно? изначально задача - подготовить массив данных для представления: сделать выборку из базы, записать выборку в массив. отсортировать массив по возрастанию, где 1й элемент - наиболее ранняя дата (с учетом времени). у меня есть 2 мысли: 1. перевести данные в UNIX формат и сравнивать числовые значения; 2. разнести даты на разные колонки, где отдельно будут стоять год, месяц, день, час, минута; - и сравнивать более сложными запросами отдельные колонки. но можно оставить все и так как есть, если сравнение данных "как есть" возможно. что скажете? |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 08.01.2011
Сообщений: 226
|
![]()
Зачем переводить? SQL отлично сравнивает даты в текстовом формате: 'yyyymmdd'
если и время нужно, то :'yyyymmddhhmmss' |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 04.04.2011
Сообщений: 38
|
![]()
если я все правильно понял, результат работы следующего скрипта:
PHP код:
add: MySQL Последний раз редактировалось silvestr; 15.04.2011 в 13:12. Причина: add |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 09.09.2008
Сообщений: 2,624
|
![]()
Да. Но только не потому что одна дата больше другой, а потому что php будет сравнивать "несравнимое" причём до победного конца.
PHP код:
PHP код:
Ваша задача легко решается средствами MySql, при хранении даты в поле типа datetime.
Стрелок-охотник
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 04.04.2011
Сообщений: 38
|
![]() |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 09.09.2008
Сообщений: 2,624
|
![]()
запрос вернёт уже отсортированный массив
Код:
Стрелок-охотник
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 04.04.2011
Сообщений: 38
|
![]()
эврика, благодарю
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 04.04.2011
Сообщений: 38
|
![]()
а никто не сталкивался со скриптами проверки рассчитываемого времени на предмет перехода следующих суток, следующего дня, следующего года?
например есть событие, которое начнется в 23.00, будет длиться 2 часа. значит закончится в 1.00 следующего дня, а следующий день может быть уже 1м числом следующего месяца, и даже следующим годом, если событие началось 31 дек. погуглил, скорее всего вопрос не правильно задаю, не могу сформулировать. add: или есть функции, как с UNIX-временем? Код:
PHP код:
как быть в случае, если необходимо вычислить точное время окончания этого события, не плюсуя напрямую к часам +3, иначе получим 25 часов. Последний раз редактировалось silvestr; 15.04.2011 в 22:48. Причина: add |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 04.04.2011
Сообщений: 38
|
![]() PHP код:
Последний раз редактировалось silvestr; 16.04.2011 в 03:27. |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 04.04.2011
Сообщений: 38
|
![]()
A non well formed numeric value encountered в функции
есть событие, которое запланировано на $date. тем не менее, у этого события не четкое время начала, а именно: $date - $minus, и продлится до $date непосредственно. PHP код:
PHP код:
PHP код:
PHP код:
как видно опрерация выполняется (только не минусуется, а почему-то плюсуется, у $minus изначально отрицательное значение), но это прибавление, почему-то проходит к точке отсчета unix времени, а не к моей $date :/ |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как сравнивать строки в C# | Cpluser | Помощь студентам | 1 | 13.03.2010 14:02 |
Разворачивающиеся меню. Как проще? | Web-Gangsta | JavaScript, Ajax | 4 | 05.05.2009 17:46 |
как правильно сравнивать числа? | codeok | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 29.10.2008 23:26 |
Как проще создать оконное приложение | Mrloony | Общие вопросы C/C++ | 3 | 22.09.2008 00:00 |
Печать из memo как можно проще | NecroSlider | Общие вопросы Delphi | 2 | 01.02.2008 22:22 |