Forum Webscript.Ru

Программирование => PHP => Тема начата: advocat от 03 Августа 2002, 17:20:02

Название: Сортировка данных
Отправлено: advocat от 03 Августа 2002, 17:20:02
Вобщем есть в некой таблице table некий столбец date, где дата, но не в стандартном формате:
$date = date("d.m.Y H:i");
Делаем запрос и сортируем по дате в обратном порядке
SELECT * table ORDER BY date DESC
но получается реально белиберда :(
[ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC] ,...]
Как указать, что integer столбца дата и в НЕ стандартном формате ???
Название: Сортировка данных
Отправлено: OBOLTUS от 03 Августа 2002, 17:47:46
Добавь столбец со стандартной датой и сортируй по нему.
Название: Сортировка данных
Отправлено: Макс от 03 Августа 2002, 20:06:22
ИМХО лучше было бы хранить в MySQL нормальную дату а при select-е менять ее формат
Название: Сортировка данных
Отправлено: Tankist от 03 Августа 2002, 21:37:40
Я лчино всегда даты в mySQL храню в timestamp
Название: Сортировка данных
Отправлено: Макс от 04 Августа 2002, 01:10:23
Цитировать
timestamp
он при UPDATE-е меняет значение, а это не всегда удобно.
Название: Сортировка данных
Отправлено: Covex от 04 Августа 2002, 09:45:02
Цитировать
timestamp он при UPDATE
наверное имеется ввиду time -- UNIX timestamp  и хранить его как число и сортируй как хочешь. Правда при выводе нужно Date  пользовать для очелоовечивания результата.
Название: Сортировка данных
Отправлено: advocat от 04 Августа 2002, 13:23:45
Весь прикол в том, что я то могу обочти много приколов, в том числе если написано только дата, то она сортируется на ура например ORDER BY MONTH(date) DESC
но вот если еще написано время, то подобная сортировка :(
А как грубо говоря вывести результат, в том порядке, в котором данные заносились в базу ? ид нет ? примари кей используется, но в других целях ...
Название: Сортировка данных
Отправлено: Tankist от 04 Августа 2002, 13:59:21
Цитировать
он при UPDATE-е меняет значение

Почему-же?
Он у меня хранится в int(14) и все нормально:)
А с полей timestamp так и не разобрался:(
Название: Сортировка данных
Отправлено: Макс от 04 Августа 2002, 15:53:26
Цитировать
Он у меня хранится в int(14) и все нормально
если так то да. Я писал  про поле timestamp
А я предпочитаю хранить в обыкновенномм datetime
INSERT-запрос тогда выглядит:
INSERT INTO tab(login,password,date) VALUES(\'$login\',password(\'$password\'), now())

А если нужно в SELECT-е получить дату в каком-то ином формате то DATE_FORMAT() использую
Название: Сортировка данных
Отправлено: Stek от 04 Августа 2002, 16:48:33
Цитировать
int(14)

А не много ли будет ? Имхо на наш век 11 хватит с лихвой.