|
|
|
| Здравствуйте. Прошу помощи в вопросе: как из таблицы, содержащей 893 строки, состоящей из 2-х столбцов (название и дата вида 20011-06-11 10:12:14) выбрать лишь по одному неповторяющемуся названию у которого дата наиболее близка к нынешнему числу? Заранее благодарен за участие в обсуждении. | |
|
|
|
|
|
|
|
для: Rolex
(24.06.2011 в 11:16)
| | Можно отталкиваться от следующего запроса
SELECT DISTINCT name, putdate FROM tbl
ORDER BY putdate DESC
|
| |
|
|
|
|
|
|
|
для: cheops
(24.06.2011 в 11:43)
| | Я так и делаю. Просто одинаковому значению в столбце name соответствует несколько дат, отличающиеся секундами. Например:
audi 2011-06-11 14:06:11
audi 2011-06-11 14:06:12
audi 2011-06-11 14:06:13
Как из этих строк выбрать одну со временем, максимально близким к нынешнему? | |
|
|
|
|
|
|
|
для: Rolex
(25.06.2011 в 12:50)
| | А ключевое слово DISTINCT указываете перед name? | |
|
|
|
|
|
|
|
для: cheops
(25.06.2011 в 14:27)
| | Да, указывал. Это и есть неповторяющиеся пары (указаны в примере), которые подобный запрос выводит. А вто какой запрос нужен, чтобы он выводил так: audi 2011-06-11 ??? Т.е. DISTINCT выбор был бы по числу, месяцу и году, не учитывая часы, минуты и секунды? | |
|
|
|
|
|
|
|
для: Rolex
(26.06.2011 в 01:49)
| | Тогда замените запрос следующим
SELECT name, putdate FROM tbl
ORDER BY putdate DESC
GROUP BY name
|
| |
|
|
|
|
|
|
|
для: cheops
(26.06.2011 в 10:40)
| | Спасибо, помогло! | |
|
|
|