Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как работает функция INTERVAL() ?
 
 автор: jeans1986   (05.10.2006 в 20:17)   письмо автору
 
 

Здравствуйте. Я новичок в MySQL. Помогите разобратся как работает функция INTERVAL() ? Заранее благодарю.

   
 
 автор: codexomega   (06.10.2006 в 06:32)   письмо автору
 
   для: jeans1986   (05.10.2006 в 20:17)
 

Из учебника:

Например, чтобы найти дату 14 спустя 13-ого июля 2003, можно использовать :
mysql> SELECT DATE_ADD('2003-07-13', INTERVAL 14 DAY);
+-----------------------------------------+
| DATE_ADD('2003-07-13', INTERVAL 14 DAY) |
+-----------------------------------------+
| 2003-07-27 |
+-----------------------------------------+
Вы можете также использовать отрицательное выражение.

Найти дату 22 часа и 14 минут, до 13 июля 2003, 1 час, 1 минуту и 1 секунду, можно использовать:
mysql> SELECT DATE_ADD('2003-07-13 01:01:01', INTERVAL -'22:14' HOUR_MINUTE);
+----------------------------------------------------------------+
| DATE_ADD('2003-07-13 01:01:01', INTERVAL -'22:14' HOUR_MINUTE) |
+----------------------------------------------------------------+
| 2003-07-13 00:39:01 |
+----------------------------------------------------------------+

   
 
 автор: jeans1986   (06.10.2006 в 10:07)   письмо автору
 
   для: codexomega   (06.10.2006 в 06:32)
 

Я вот в учебнике прочитал такой пример.

mysql> SELECT INTERVAL(10,1,10,100,1000);

Результат этого запроса равен 2. Вот я не понял как получается 2?
Заранее благодарю.

   
 
 автор: Trianon   (06.10.2006 в 10:16)   письмо автору
 
   для: jeans1986   (06.10.2006 в 10:07)
 

Функция получает в качестве параметров значение поиска (в данном примере первая десятка) и ряд чисел, в котором искать её место (в данном случае 1,10,100,1000)
числа должны быть целыми, а ряд должен быть возрастающей последовательностью.
Функция возвращает позицию искомого значения в этом ряду, т.е. сколько чисел ряда, не превышающих искомомое, нужно пропустить. В данном случае 2 числа в ряду (1,10) не превышают искомое 10. Поэтому в результате функция вернет 2.
SELECT INTERVAL(9,1,10,100,1000); вернет 1
SELECT INTERVAL(500,1,10,100,1000); вернет 3

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования