SQL. Как работать с датами в SQL Server
Из строки в дату и обратно
Приведение строки к дате
-- формат dd.mm.yyyy
select try_convert(date, isnull(@fielddateBirth,'01.01.1980'), 104)
-- формат yyyy-mm-dd
select try_convert(date, isnull(@fielddateBirth,'1980-01-01'), 23)
Приведение даты к строке
-- формат dd.MM.yyyy
select try_convert(nvarchar(16), getdate(), 104)
-- формат yyyy-mm-dd
select convert(nvarchar, isnull(dateBirth,'1900-01-01'), 23)
Приведение даты к строке в заданном формате:
select format(getdate(), 'dd.MM.yyyy HH:mm')
Полезные функции по работе с датами
select getdate() -- получить текущую дату
select dateadd(day, 7, getdate()) -- добавить 7 дней к дате
select dateadd(month, -2, getdate()) -- отнять 2 месяца от даты
select datediff(minute, date1, date2) -- получить разницу в минутах между date2 и date1
SELECT DAY(GETDATE()) -- 28 получить день даты (аналогично month, year, week)
SELECT DATENAME(month, GETDATE()) -- July получить название месяца
SELECT DATEPART(month, GETDATE()) -- 7 получить часть даты (например, месяц, год или день)
SELECT DATEFROMPARTS(2017, 7, 28) -- 2017-07-28 строит дату из частей
SELECT ISDATE('2017-07-28') -- 1 - проверка является ли строка датой
Полезные вычисления по датам (типовые задачи)
-- начало и конец недели
SET DATEFIRST 4 /* or use any other weird value to test it */
DECLARE @d DATETIME = GETDATE()
SELECT
@d ThatDate,
cast( DATEADD(dd, 0 - (@@DATEFIRST + 5 + DATEPART(dw, @d)) % 7, @d) as date) Monday,
cast(DATEADD(dd, 6 - (@@DATEFIRST + 5 + DATEPART(dw, @d)) % 7, @d) as date) Sunday
-- начало месяца
SELECT DATEADD(month, DATEDIFF(month, 0, @d), 0) AS StartOfMonth
-- номер недели в году
set datefirst 1;
select datepart(week, '2017-02-01');
-- получение дня недели
select datename(dw,getdate()) --Thursday
select datepart(dw,getdate()) --2
Форматы дат: https://www.mssqltips.com/sqlservertip/1145/date-and-time-conversions-using-sql-server/
Работа с датами на Metanit - https://metanit.com/sql/sqlserver/8.3.php
Особенности работы с датами в формах на Falcon Space
Что еще посмотреть по SQL Server
SQL Server. Как переносить на новую строку в строковой переменной в SQL
SQL. Вывод разметки HTML в сыром виде (в виде тегов) в SQL
SQL. Как привести дату в строку в нужный формат в SQL Server
SQL. Как использовать select from Хранимка
SQL. Как прописью написать число в SQL
SQL. Как массово залить данные в таблицу БД через CSV (Excel)
Falcon Space
Это снижение стоимости владения
за счет меньшего количества людей для поддержки и узкого стека разработки. Про снижение стоимости владения продуктом
Это быстрое внесение изменений
по ходу эксплуатации программы. Как создается функционал на платформе
Это простой удобный интерфейс
адаптация под мобильные устройства. Про юзабилити платформы