Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Временные функции, возвращающие числа

Строковые функции, возвращающие строки | Выполнение арифметических операций | Управление точностью числовых данных | Обработка данных со знаком | Часовые пояса | Строковые представления временных данных | Загрузка данных часового пояса MySQL | Преобразования строки в дату | Функции для создания дат | Временные функции, возвращающие даты |


Читайте также:
  1. I. СОВРЕМЕННЫЕ ОРДЕНА, НАЗЫВАЮЩИЕ СЕБЯ РЫЦАРСКИМИ
  2. KI. Числа
  3. Адаптация к социально-экономичиским условиям жизни у разных типов предпринимателей (в абсолютных числах и % от числа опрошенных в каждом типе).
  4. Адаптация к социально-экономичиским условиям жизни у разных типов предпринимателей в зависимости от уровня образования (в абсолютных числах и % от числа опрошенных в каждом типе).
  5. Б) Определите по словарю форму единственного числа данных существительных. Переведите.
  6. Билет № 6 Валя .Современные модели социальной работы.
  7. В именованных числах

 

Ранее в этой главе была представлена функция, используемая для до_ бавления заданного интервала к значению даты и формирующая, та_ ким образом, другую дату. Другая распространенная операция при ра_ боте с датами – определение количества интервалов (дней, недель, лет) между двумя датами. MySQL включает предназначенную для этогофункцию datediff(), которая возвращает количество полных дней ме_ жду двумя датами. Например, чтобы узнать, сколько дней будут про_ должаться школьные каникулы этим летом, можно сделать так:

 

mysql> SELECT DATEDIFF('2005_09_05', '2005_06_22');

 

+______________________________________+ | DATEDIFF('2005_09_05', '2005_06_22') | +______________________________________+

 

| 75 |

 

+______________________________________+ 1 row in set (0.00 sec)

 

Итак, до благополучного возвращения детей в школу мне предстоит 75_дневная пытка ядовитым плющом, комариными укусами и разби_ тыми коленками. Функция datediff() в своих аргументах не учитыва_ ет время дня. Даже если включить время, задавая для первой даты од_ ну секунду до полуночи и для второй даты одну секунду после полуно_ чи, эти данные никак не отразятся на вычислениях:

 

mysql> SELECT DATEDIFF('2005_09_05 23:59:59', '2005_06_22 00:00:01');

 

+________________________________________________________+ | DATEDIFF('2005_09_05 23:59:59', '2005_06_22 00:00:01') | +________________________________________________________+

 

| 75 |

 

+________________________________________________________+ 1 row in set (0.00 sec)

 

Если переставить аргументы, поместив первой более раннюю дату, datediff() вернет отрицательное число:


 

mysql> SELECT DATEDIFF('2005_06_22', '2005_09_05');


 

Функции преобразования  
   

 

+______________________________________+ | DATEDIFF('2005_06_22', '2005_09_05') | +______________________________________+

| _75 |

 

+______________________________________+

В SQL Server тоже есть функция datediff(), но более гибкая, чем в MySQL. В ней можно задавать тип интервала (т. е. год, месяц, день, час), а не только вычислять количество дней между двумя датами. Вот как был бы выполнен предыдущий пример для SQL Server:

 

SELECT DATEDIFF(DAY, '2005_06_22', '2005_09_05')

 

Oracle Database позволяет определять число дней между двумя датами простым вычитанием одной даты из другой.

 


Дата добавления: 2015-08-17; просмотров: 49 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Временные функции, возвращающие строки| Функции преобразования

mybiblioteka.su - 2015-2024 год. (0.005 сек.)