Разработка

Подкатегория

Кирилл Антонов
4 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223


-- узнать номер недели в году
SELECT WEEK('2008-02-20');

SELECT WEEK('2008-02-20',0);

SELECT WEEK('2008-02-20',1);

SELECT WEEK('2008-12-31',1);


-- получить номер дня недели по дате (нумерация с нуля до шести)
SELECT WEEKDAY('2008-02-03 22:23:00');


-- узнать номер календарной недели по дате
SELECT WEEKOFYEAR('2008-02-20');

Кирилл Антонов
3 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223


-- DAYNAME(): принимает значение с типом даты-времени и возвращает название дня недели.
SELECT DAYNAME('2007-02-03');

-- DAY(), DAYOFMONTH(): принимает в качестве аргумента значение с типом дата-время и возвращает номер дня в месяце.

SELECT DAYOFMONTH('2007-02-03');
SELECT DAY('2007-02-03');

-- DAYOFWEEK(): возвращает индекс дня недели (нумерация с 1 до 7).
SELECT DAYOFWEEK('2007-02-03');


-- DAYOFYEAR(): функция MySQL сервера возвращает номер дня в году.
SELECT DAYOFYEAR('2017-09-03');


-- FROM_DAYS(): в качестве аргумента функция принимает число дней и конвертирует их в соответствующую дату.
SELECT FROM_DAYS(830669);
SELECT FROM_DAYS(366000);
SELECT FROM_DAYS(366);



-- LAST_DAY: возвращает последний день месяца.

SELECT LAST_DAY('2013-03-05');

SELECT LAST_DAY('2014-02-05');

SELECT LAST_DAY('2015-02-01 01:01:01');

SELECT LAST_DAY('2016-03-32');



-- TO_DAYS(): в качестве аргумента принимает дату и возвращает количество дней прошедших с нулевого года до этой даты.
SELECT TO_DAYS('2026-11-17');

Кирилл Антонов
2 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

-- MICROSECOND(): возвращает микросекунды аргумента.
SELECT MICROSECOND('18:12:11.123456');

SELECT MICROSECOND('1929-12-16 23:59:59.010010');

-- MINUTE(): возвращает минуты аргумента.

SELECT MINUTE('2012-11-15 10:55:03');




-- SEC_TO_TIME(): принимает значение в секундах и конвертирует его в формат 'HH:MM:SS'

SELECT SEC_TO_TIME(12398);

-- SECOND(): возвращает секунды.
SELECT SECOND('15:25:53');

-- TO_SECONDS(): в качестве аргумента получает дату и конвертирует ее в секунды, которые прошли с нулевого года.

SELECT TO_SECONDS('2016-12-19');

-- HOUR(): в качестве аргумента функция MySQL сервера принимает значение с типом дата-время и возвращает часы.
SELECT HOUR('710:35:03');

Кирилл Антонов
6 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

-- EXTRACT(): извлекает часть даты из переданного значения, например: день, месяц, год и др.

SELECT EXTRACT(YEAR FROM '2019-12-02');
SELECT EXTRACT(YEAR_MONTH FROM '2016-03-12 11:52:16');
SELECT EXTRACT(DAY_MINUTE FROM '1999-11-03 06:32:18');

-- GET_FORMAT(): функция используется как помощник для функции DATE_FORMAT и STR_TO_DATE(), она возвращает шаблоны записи времени.

SELECT DATE_FORMAT('2023-01-31',GET_FORMAT(DATE,'EUR'));
SELECT STR_TO_DATE('11.30.2013',GET_FORMAT(DATE,'USA'));
SELECT DATE_FORMAT('2011%03%12',GET_FORMAT(DATE,'INTERNAL'));

-- PERIOD_ADD(): функция добавляет N месяцев к периоду P. Оба аргумента – числа. Допустимые форматы: YYMM и YYYYMM

SELECT PERIOD_ADD('201801',2);

-- PERIOD_DIFF(): функция возвращает количество месяцев между периодами P1 и P2. Допустимые форматы: YYMM и YYYYMM
SELECT PERIOD_DIFF(199806,199712);

-- STR_TO_DATE(): функция MySQL сервера конвертирует строку в дату. Является обратной для функции DATE_FORMAT().
SELECT STR_TO_DATE('01,5,2013','%d,%m,%Y');
SELECT STR_TO_DATE('09:30:17','%h:%i:%s');
SELECT STR_TO_DATE('9','%m');
SELECT STR_TO_DATE('abc','abc');

Кирилл Антонов
3 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

Специальное значение NULL в базах данных MySQL говорит об отсутствии значения, например, при вставки строки, вы можете опустить какое-то значение и MySQL автоматически добавит в столбец значение NULL.
Значение NULL можно указать для столбца явно, при выполнении модификации значений также можно изменять значение на NULL. Это все справедливо для тех столбцов, у которых нет ограничения NOT NULL.
Регистр написания ключевого слова NULL в базах данных MySQL значения не имеет.


CREATE TABLE table1 (
name TEXT,
age INTEGER
);

INSERT INTO table1 (name, age) VALUES ("Вася", NULL);
INSERT INTO table1 (name) VALUES ("Петя");
INSERT INTO table1 (name, age) VALUES ("Коля", 25);
SELECT * FROM table1;

UPDATE table1 SET name = null WHERE age = 25;
SELECT * FROM table1;

CREATE TABLE table2 (
name TEXT NOT NULL,
age INTEGER DEFAULT 18
);


INSERT INTO table2 (name, age) VALUES ("Вася", NULL);
INSERT INTO table2 (name, age) VALUES (NULL, 14);
INSERT INTO table2 (name) VALUES ("Петя");

Кирилл Антонов
2 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223


Как такового логического типа данных в MySQL нет, а ключевые слова TRUE (истина) и FALSE (ложно) эквивалентны значениям 1 и 0 соответственно.
Логическое значение мы можем получить, если выполняем операции сравнения: TRUE если операция сравнения дает истинный результат, например 45 больше 15, FALSE мы получим, если операция сравнения дает ложный результат, например 45 меньше 15.
При использовании ключевых слов TRUE и FALSE регистр значения не имеет:
SELECT TRUE, FALSE, true, false, True, False;

Кирилл Антонов
10 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

В базах данных MySQL сервера поддерживается стандартный набор логических операторов или операторов булевой алгебры: Логическое И (AND, &&), Логическое НЕ (NOT, !), Логическое ИЛИ (||, OR), Исключающее ИЛИ (XOR).
В результате выполнения операций булевой алгебра в MySQL мы можем получить одно из трех значений: TRUE, FALSE или NULL.
Любое ненулевое значение в MySQL можно считать как TRUE.


SELECT 10 IS TRUE; 10 это истина?
SELECT -10 IS TRUE;
SELECT 'string' IS NOT NULL;
SELECT '' IS TRUE;
SELECT '' IS FALSE;
SELECT ' ' IS TRUE;
SELECT 0 IS TRUE;
SELECT NULL IS TRUE;
SELECT NULL IS FALSE;


SELECT NOT 10;
SELECT NOT 0;
SELECT NOT NULL;
SELECT ! (1+1);
SELECT !1+1;
SELECT NOT "";
SELECT NOT " ";

0 1

1*1 = 1
1*0 = 0
0*0 = 0



SELECT 1 AND 1;
SELECT 1 AND 0;
SELECT 1 AND NULL;
SELECT 0 AND NULL;
SELECT NULL AND 0;
SELECT NULL AND NULL;



1+1 = 1
1+0 = 0
0+1 = 1
0+0 = 0

SELECT 1 OR 1;
SELECT 1 OR 0;
SELECT 0 OR 0;
SELECT 0 OR NULL;
SELECT 1 OR NULL;
SELECT NULL OR NULL;
SELECT "str" OR 'str';
SELECT "str" OR '';
SELECT "" OR '';
SELECT "" OR ' ';




SELECT 1 XOR 1;
SELECT 1 XOR 0;
SELECT 0 XOR 1;
SELECT 1 XOR NULL;
SELECT 0 XOR NULL;
SELECT 1 XOR 1 XOR 1;


SELECT !(1 AND 0 OR 1 XOR 0);

Кирилл Антонов
5 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

MySQL поддерживает довольно-таки большой набор операторов и функция сравнения значений: BETWEEN ... AND ..., COALESCE(), =, GREATEST(), IN(), INTERVAL(), IS, IS NOT, IS NOT NULL, IS NULL, ISNULL(), LEAST(), LIKE, NOT BETWEEN ... AND ..., !=, NOT IN(), NOT LIKE, STRCMP().
Часть из них возвращает логические значения, как результат своей работы, а некоторые функции и операторы возвращают значения, исходя из того, что они получили.

-- Проверка на равенство значений
SELECT 1 = 0;
SELECT NULL = 0;
SELECT 1 = NULL;
SELECT NULL = NULL;
SELECT '0' = 0;
SELECT '0.0' = 0;
SELECT '0.01' = 0;
SELECT '.01' = 0.01;


-- Оператор проверки логического значения IS
SELECT 10 IS TRUE;
SELECT -10 IS TRUE;
SELECT 'string' IS NOT NULL;
SELECT '' IS TRUE;
SELECT '' IS FALSE;
SELECT ' ' IS TRUE;
SELECT 0 IS TRUE;
SELECT NULL IS TRUE;
SELECT NULL IS FALSE;


-- Операторы IS NULL и IS NOT NULL или проверка на NULL
SELECT 1 IS NULL, 0 IS NULL, NULL IS NULL;
SELECT 1 IS NOT NULL, 0 IS NOT NULL, NULL IS NOT NULL;


-- Оператор между (не знаю как он правильно называются): ... BETWEEN ... AND ...

SELECT 2 BETWEEN 1 AND 3, 2 BETWEEN 3 and 1;
SELECT 1 BETWEEN 2 AND 3;
SELECT 2.5 BETWEEN 2 AND 3;
SELECT 4 BETWEEN 2 AND 3;
SELECT 'b' BETWEEN 'a' AND 'c';


SELECT 'b' NOT BETWEEN 'a' AND 'c';
SELECT 1 NOT BETWEEN 2 AND 3;
SELECT 4 NOT BETWEEN 2 AND 3;
SELECT 2.5 NOT BETWEEN 2 AND 3;

-- Следующая функция MySQL сравнивает значения и возвращает первое попавшееся, которое не равно NULL
SELECT COALESCE(NULL,1, 55, 'hello');
SELECT COALESCE(NULL,NULL,NULL);



-- Следующая функция MySQL сравнивает значения и возвращает наибольшее
SELECT GREATEST(2,0);
SELECT GREATEST(34.0,3.0,5.0,767.0);
SELECT GREATEST('B','A','C');
SELECT GREATEST('B','A','C', NULL);


-- Оператор IN. Данный оператор в SQL и базах данных MySQL имеет два операнда. Первый операнд сравниваемое значение, второй - набор значений, с которым сравнивается первый операнд.

SELECT 2 IN (0,3,5,7);
SELECT 'wefwf' IN ('wee','wefwf','weg');

SELECT (3,4) IN ((1,2), (3,4));
SELECT (3,4) IN ((1,2), (3,5));

SELECT 2 NOT IN (0,3,5,7);
SELECT 'wefwf' NOT IN ('wee','wefwf','weg');

-- В базах данных MySQL есть функция ISNULL(), в качестве аргумента она принимает выражение и проверяет его результат на NULL

SELECT ISNULL(1+1);
SELECT ISNULL(1/0);

-- Быстрая проверка/сортировка чисел.
0 1
SELECT INTERVAL(23, 1, 15, 17, 30, 44, 200);
SELECT INTERVAL(31, 30, 35, 17, 30, 44, 200);
SELECT INTERVAL(4, 6, 7, 8, 9, 10, 11);

-- Поиск наименьшего значения в базе данных MySQL
-- Если один из аргументов NULL, то результат всегда будет NULL
-- Если все аргументы INTEGER или могут быть приведены к INTEGER, то они сравниваются как целые цисла.
-- Если аргументы REAL или могут быть приведены к REAL, то они сравниваются как вещественные числа.
-- Если аргументы смешанные (строки и числа), то MySQL сравнивает их как числа.
-- Если аргументы - небинарные строки, то они сравниваются как небинарные строки.
-- Все остальные случаи MySQL сравнивает значения в бинарном виде, то есть как последовательность нулей и единиц.
SELECT LEAST(2,0);
SELECT LEAST(34.0,3.0,5.0,767.0);
SELECT LEAST('B','A','C');

Кирилл Антонов
3 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

-- MySQL сервер умеет делать преобразование строки в число автоматически
-- все зависит от контекста операции. Такое преобразование обычно называют неявным.
SELECT 1+'10';
SELECT 1+'10a';
SELECT 1+'10a25';
SELECT 1+'a10a';
SELECT CONCAT(2, " test string!");

-- Число в строку в базах данных MySQL сервера можно преобразовать явно, используя
-- специальную функцию CAST().
-- Функция CAST принимает ровно два аргумента: первый аргумент - это значение, которое необходимо преобразовать, второй аргумент - это тип данных, в который конвертируется значение.

SELECT 38.8, CAST(38.8 AS CHAR);
SELECT 38.8, CAST(38.8 AS CHAR(1));

SELECT 38.8, CONCAT(38.8);

-- Кроме того, выполнении операций сравнения, MySQL сервер пытается привести значенияя разных типов данных к одному, если такое вообще возможно, а затем сравнивать их. Но об этом мы уже говорили, ссылка будет в описании.


-- Поскольку числа с плавающей точкой не всегда могут быть представлены точно, мы можем получить неожиданные результаты при сравнении значений таких чисел.

SELECT '28015376320243458' = 28015376320243458;
SELECT '28015376320243459' = 28015376320243489;

-- Такое поведение MySQL сервера связано с тем, что происходит округление чисел:
SELECT '28015376320243459'+0.0;

-- Чтобы избежать таких ошибок, выполняйте явные преобразования строки в число, используя функцию CAST():
SELECT CAST('28015376320243459' AS UNSIGNED) = 28015376320243459;

-- Точность преобразований и округлений чисел в MySQL зависит от многих факторов: версии компилятора, архитектуры процессора, версии операционной системы и др.

Кирилл Антонов
3 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223
Тип данных TIME в базах данных MySQL предназначен для хранения времени и поддерживает два формата: 'HH:MM:SS‘ и ‘HHH:MM:SS‘. Диапазон допустимых значений выглядит следующим образом: от '-838: 59: 59' до '838: 59: 59‘.
Очень часто тип данных TIME в базах данных используют для фиксации времени, которое прошло между двумя событиями, отсюда и такой большой часовой интервал.
Если ваш временной интервал больше максимального значения, то MySQL выполнит округление до максимального значения. Если вы пытаетесь добавить недопустимое время, то будет добавлена нулевая строка.

Кирилл Антонов
4 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

Тип данных YEAR используется для хранения года, под значения с типом данных YEAR в базах данных MySQL выделяется один байт. На данный момент в MySQL актуальным форматом для типа данных YEAR является год, записанный четырьмя цифрами. Формат при котором год записывается двумя цифрами работать не будет, начиная с MySQL 5.7.5.
Диапазон для типа данных YEAR следующий: от 1901 до 2155, а также 0000.
Значения для типа данных YEAR можно указывать как в виде строки, так и виде числа.
MySQL будет преобразовывать значения для года, если они состоят из одной или двух цифр: от 1 до 69 в 2001-2069 и от 70 до 99 в 1970-1999.

Кирилл Антонов
6 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

Столбцы с типами данных DATETIME и TIMESTAMP в базах данных MySQL могут быть автоматически инициализированы и обновлены, что бывает очень полезным при работе в сети Интернет. Автоматически это происходит в двух случаях:
Если вы выполняете операцию вставки и не указываете дату и время для столбца с типом TIMESTAMP.
Автоматическое обновление происходит в том случае, когда вы обновляете строку в таблице. Если обновление столбца с временем не нужно, то вам необходимо указать старое время при выполнении операции модификации.
Чтобы всегда получать текущее время используйте конструкцию DEFAULT CURRENT_TIMESTAMP, а чтобы обновления столбца с типом TIMESTAMP происходило автоматически при обновлении данных в строке, используйте конструкцию: ON UPDATE CURRENT_TIMESTAMP.
Но замечу, что ключевое слово DEFAULT позволяет задавать любое допустимое значение по умолчанию.

Кирилл Антонов
2 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

MySQL прекрасно работает с милиcекундами и микросекундами и любыми другими дробными секундами больше, чем микро. Но при этом у столбца должен быть тип данных TIME, TIMESTAMP или DATETIME. При этом тип данных должен быть указан следующим образом: type(n).
Здесь: type – это тип данных, а n – показатель дробной части (от 0 до 6 включительно).
MySQL прекрасно умеет округлять значения, если они выходят из заданного диапазона.

Кирилл Антонов
1 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

Иногда у вас может возникнуть необходимость преобразовать значение из одного типа данных даты/времени в другой, и иногда MySQL способен выполнить такое преобразование (при этом никто вам не гарантирует целостность данных, преобразование может произойти с потерями).
Если значение с типом DATE преобразуется в значение с типами DATETIME или TIMESTAMP, то происходит добавление временной части в виде нулей (2012-11-21 00:00:00)
Преобразование в тип DATE из TIMESTAMP или DATETIME происходит с округлением даты (1999-12-31 23: 59: 59,499' становится '1999-12-31', тогда как '1999-12-31 23: 59: 59,500' становится '2000-01-01').
Преобразование в значение TIME: тип DATE не имеет смысла преобразовывать, а при преобразовании типов DATETIME и TIMESTAMP отбрасывается дата целиком.

Кирилл Антонов
1 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

MySQL сервер обладает огромным набором встроенных функций для работы с датой и временем. Для удобства рассмотрения этих функций разделим их на группы и будем рассматривать их в отдельности:
Функции добавления даты и времени.
Функции получения текущего времени и даты.
Функции для получения конкретного дня (недели, месяца, года и пр.).
Другие.

Деление условное и в документации MySQL сервера его нет: http://dev.mysql.com/doc/refma....n/5.7/en/date-and-ti

ADDDATE(): добавляет определенное количество дней/месяцев/лет к переданной дате.
DATE(): извлекает из переданного формата даты-времени только дату или часть даты.
DATE_ADD(): функция выполняет арифметические операции с датами, она позволяет вычитать и добавлять интервалы времени к текущей дате. Тип данных на выходе зависит от переданных аргументов.
DATE_FORMAT(): встроенная функция MySQL сервера, которая позволяет форматировать дату и время.
DATE_SUB(): данная функция вычитает из даты определенный временной интервал.
DATEDIFF(): эта функция вычитает из одной даты другую.
MAKEDATE(): функция принимает два аргумента: год и номер дня в году и возвращает дату этого дня.
SUBDATE(): функция вычитает количество указанных дней из даты, может являться полным синонимом DATE_SUB().
SYSDATE(): данная функция возвращает в качестве своей работы дату и время в формате: 'YYYY-MM-DD HH: MM: SS‘. Очень похожа на now().

Кирилл Антонов
4 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 41001153112

TIME(): принимает в качестве аргумента значение с типом дата-время и возвращает только время.
TIME_FORMAT(): в качестве аргумента принимается только значения с временным типом, форматирует значение.
TIME_TO_SEC(): данная функция MySQL сервера в качестве аргумента принимает дату и время и возвращает этот аргумент в секундах.
TIMEDIFF(): функция принимает два аргумента с временным типом данных и вычитает второй из первого.
TIMESTAMP() With a single argument, this function returns the date or datetime expression; with two arguments, the sum of the arguments
TIMESTAMPADD() Add an interval to a datetime expression
TIMESTAMPDIFF() Subtract an interval from a datetime expression
SUBTIME(): функция вычитает время.
ADDTIME(): функция добавляет время к переданному.
FROM_UNIXTIME() Format Unix timestamp as a date
MAKETIME() Create time from hour, minute, second
UNIX_TIMESTAMP() Return a Unix timestamp

Кирилл Антонов
2 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

-- Текущие дата и время
SELECT CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP, NOW(), LOCALTIME(), LOCALTIME, LOCALTIMESTAMP, LOCALTIMESTAMP();

-- Текущая дата
SELECT CURDATE(), CURRENT_DATE(), CURRENT_DATE;

-- текущее время
SELECT CURRENT_TIME(), CURRENT_TIME, CURTIME();

-- со всеми этими функциями можно:
SELECT NOW(5);
SELECT NOW(2)+0;

Кирилл Антонов
2 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223


-- Получить дату в стандарте UTC
SELECT UTC_DATE();

-- Получить время в стандарте UTC
SELECT UTC_TIME();
SELECT UTC_TIME(3);

-- Получить дату и время в UTC
SELECT UTC_TIMESTAMP();
SELECT UTC_TIMESTAMP(2);

Кирилл Антонов
5 Просмотры · 4 лет тому назад

Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223

------------------------------------------------------------------
-- Вырезает из переданного аргумента год
SELECT YEAR('2017-01-01');
SELECT YEAR('2017-01-01 12:00:00');

-- Получить дату и вернуть год и номер недели
SELECT YEARWEEK('2007-03-21');


-- QUARTER(): возвращает номер квартала, который соответствует переданной дате.
SELECT QUARTER('2016-12-19');
----------------------------------------------------------------

-- Определить по дате номер месяца в году
SELECT MONTH('2008-02-03');

-- Определить по дате название месяца в году
SELECT MONTHNAME('2008-02-03');

Кирилл Антонов
3 Просмотры · 4 лет тому назад

В этом видео уроке мы поговорим о встроенных математических функциях в MySQL. Сервер баз данных MySQL имеет широкий набор встроенных функций для выполнения сложных математических операций. Часть из этих функций мы посмотрим на примере, используя запрос SELECT.



Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd

Помощь проекту:
WMR: R28827266698
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223




Showing 1 out of 2