Изучаем sql


Глава 7. Создание, преобразование и работа с данными mysql>  SELECT EXTRACT(YEAR FROM '20050322 22:19:05')



Pdf көрінісі
бет133/261
Дата28.07.2022
өлшемі1,6 Mb.
#147825
1   ...   129   130   131   132   133   134   135   136   ...   261
Байланысты:
Изучаем SQL ( PDFDrive )

150
Глава 7. Создание, преобразование и работа с данными
mysql> 
SELECT EXTRACT(YEAR FROM '20050322 22:19:05');
++
| EXTRACT(YEAR FROM '20050322 22:19:05') |
++
| 2005 |
++
1 row in set (0.02 sec)
В SQL Server нет реализации 
extract()
, но есть функция 
date
part()
(часть даты). Вот как можно извлечь год из значения 
da
tetime
с помощью 
datepart()
:
SELECT DATEPART(YEAR, GETDATE( ))
Временные функции, возвращающие числа
Ранее в этой главе была представлена функция, используемая для до
бавления заданного интервала к значению даты и формирующая, та
ким образом, другую дату. Другая распространенная операция при ра
боте с датами – определение количества интервалов (дней, недель, лет)
между 
двумя датами. MySQL включает предназначенную для этого
функцию 
datediff()
, которая возвращает количество полных дней ме
жду двумя датами. Например, чтобы узнать, сколько дней будут про
должаться школьные каникулы этим летом, можно сделать так:
mysql> 
SELECT DATEDIFF('20050905', '20050622');
++
| DATEDIFF('20050905', '20050622') |
++
| 75 |
++
1 row in set (0.00 sec)
Итак, до благополучного возвращения детей в школу мне предстоит
75дневная пытка ядовитым плющом, комариными укусами и разби
тыми коленками. Функция 
datediff()
в своих аргументах не учитыва
ет время дня. Даже если включить время, задавая для первой даты од
ну секунду до полуночи и для второй даты одну секунду после полуно
чи, эти данные никак не отразятся на вычислениях:
mysql> 
SELECT DATEDIFF('20050905 23:59:59', '20050622 00:00:01');
++
| DATEDIFF('20050905 23:59:59', '20050622 00:00:01') |
++
| 75 |
++
1 row in set (0.00 sec)
Если переставить аргументы, поместив первой более раннюю дату,
datediff()
вернет отрицательное число:
mysql> 


Достарыңызбен бөлісу:
1   ...   129   130   131   132   133   134   135   136   ...   261




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет