Current_timestamp (transact-sql)current_timestamp (transact-sql)
Содержание:
- SQL Учебник
- Recommended Reading
- Синтаксис
- ПримерыExamples
- SQL References
- Функции, характеризующие момент (значение аргумента)
- КомментарииRemarks
- RemarksRemarks
- tzoffsettzoffset
- Установка .ipa приложений
- АргументыArguments
- Пример
- How to get different SQL Server date formats
- Типы данных SQL
- SQL References
- ПримерыExamples
SQL Учебник
SQL ГлавнаяSQL ВведениеSQL СинтаксисSQL SELECTSQL SELECT DISTINCTSQL WHERESQL AND, OR, NOTSQL ORDER BYSQL INSERT INTOSQL Значение NullSQL Инструкция UPDATESQL Инструкция DELETESQL SELECT TOPSQL MIN() и MAX()SQL COUNT(), AVG() и …SQL Оператор LIKESQL ПодстановочныйSQL Оператор INSQL Оператор BETWEENSQL ПсевдонимыSQL JOINSQL JOIN ВнутриSQL JOIN СлеваSQL JOIN СправаSQL JOIN ПолноеSQL JOIN СамSQL Оператор UNIONSQL GROUP BYSQL HAVINGSQL Оператор ExistsSQL Операторы Any, AllSQL SELECT INTOSQL INSERT INTO SELECTSQL Инструкция CASESQL Функции NULLSQL ХранимаяSQL Комментарии
Recommended Reading
Continue your learning on SQL Server dates with these tips:
-
Determine SQL Server Date and Time Parts with DATEPART and DATENAME
Functions -
SQL Server Date and Time Data Types
-
SQL Server function to convert integer date to datetime format
-
SQL Server DateTime Best Practices
-
Format SQL Server Dates with FORMAT Function
Next Steps
- The formats listed above are not inclusive of all formats provided. Experiment
with the different format numbers to see what others are available. - These formats can be used for all date/time functions, as well as data being
served to clients, so experiment with these data format conversions to see if
they can provide data more efficiently. -
Also, check out the
SQL Server FORMAT Function to Format Dates.
Edgewood Solutions is a technology company focused on Microsoft SQL Server and founder of MSSQLTips.com.
View all my tips
Related Resources
- Date and Time Conversions Using SQL Server…
- Format SQL Server Dates with FORMAT Function…
- Determine SQL Server Date and Time Parts with DATE…
- SQL Server 2008 Date and Time Data Types…
- SQL Server function to convert integer date to dat…
- More Database Developer Tips…
Become a paid author
Синтаксис
Синтаксис функции Oracle/PLSQL TO_DATE:
TO_DATE( string1, , )
Параметры или аргументы
string1 это строка, которая будет преобразована в дату.
format_mask не является обязательным. Это формат, который будет использоваться для преобразования string1 к дате. Это может быть одно или сочетание следующих значений:
Параметр | Пояснение |
---|---|
YYYY | 4-х значный год |
YYY YY Y | Последние 3, 2 или 1 цифры(а) года. |
IYY IY I | Последние 3, 2 или 1 цифры(а) года ISO. |
IYYY | 4-значный год в соответствии со стандартом ISO |
RRRR | Принимает год с 2 цифрами и возвращает год с 4 цифрами. Значение между 0-49 вернет 20xx год. Значение между 50-99 вернет 19xx год. |
Q | Квартал года (1, 2, 3, 4; JAN-MAR = 1). |
MM | Месяц (01-12; JAN = 01). |
MON | Сокращенное название месяца. |
MONTH | Название месяца, дополненное пробелами длиной до 9 символов. |
RM | Римская цифра RM (I-XII; JAN = I). |
WW | Неделя года (1-53), где неделя 1 начинается в первый день года и продолжается до седьмого дня года. |
W | Неделя месяца (1-5), где 1-я неделя начинается в первый день месяца и заканчивается седьмым. |
IW | Неделя года (1-52 или 1-53) на основе стандарта ISO. |
D | День недели (1-7). |
DAY | Название дня. |
DD | День месяца (1-31). |
DDD | День года (1-366). |
DY | Сокращенное название дня. |
J | Юлианский день; количество дней с 1 января 4712 г. до н.э. |
HH | Час дня (1-12). |
HH12 | Час дня (1-12). |
HH24 | Час дня (0-23). |
MI | Минута (0-59). |
SS | Секунда (0-59). |
SSSSS | Секунды после полуночи (0-86399). |
FF | Дробные секунды. Используйте значение от 1 до 9 после FF, чтобы указать количество цифр в долях секунды. Например, ‘FF4’. |
AM, A.M., PM, или P.M. | Индикатор меридиана. |
AD или A.D | AD индикатор. |
BC или B.C. | BC индикатор. |
TZD | Летнее время информация. Например, ‘PST’ |
TZH | Часовой пояс час. |
TZM | Часовой пояс минуты. |
TZR | Часовой пояс региона. |
nls_language не является обязательным. NLS language используется для преобразования string1 к дате.
Применение
Функцию TO_DATE можно использовать в следующих версиях Oracle/PLSQL:
Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i
ПримерыExamples
В приведенном ниже примере возвращаются компоненты указанной даты.This example returns the date parts for the specified date. Подставьте значение datepart из таблицы для аргумента в инструкции SELECT:Substitute a datepart value from the table for the argument in the SELECT statement:
Результирующий набор:Here is the result set.
datepartdatepart | Возвращаемое значениеReturn value |
---|---|
year, yyyy, yyyear, yyyy, yy | 2007 г.2007 |
quarter, qq, qquarter, qq, q | 44 |
month, mm, mmonth, mm, m | ОктябрьOctober |
dayofyear, dy, ydayofyear, dy, y | 303303 |
day, dd, dday, dd, d | 3030 |
week, wk, wwweek, wk, ww | 4444 |
weekday, dwweekday, dw | ВторникTuesday |
hour, hhhour, hh | 1212 |
minute, nminute, n | 1515 |
second, ss, ssecond, ss, s | 3232 |
millisecond, msmillisecond, ms | 123123 |
microsecond, mcsmicrosecond, mcs | 123456123456 |
nanosecond, nsnanosecond, ns | 123456700123456700 |
TZoffset, tzTZoffset, tz | +05:10+05:10 |
ISO_WEEK, ISOWK, ISOWWISO_WEEK, ISOWK, ISOWW | 4444 |
Azure Synapse AnalyticsAzure Synapse Analytics и Параллельное хранилище данныхParallel Data Warehouseand Параллельное хранилище данныхParallel Data Warehouse
В приведенном ниже примере возвращаются компоненты указанной даты.This example returns the date parts for the specified date. Подставьте значение datepart из таблицы для аргумента в инструкции SELECT:Substitute a datepart value from the table for the argument in the SELECT statement:
Результирующий набор:Here is the result set.
datepartdatepart | Возвращаемое значениеReturn value |
---|---|
year, yyyy, yyyear, yyyy, yy | 2007 г.2007 |
quarter, qq, qquarter, qq, q | 44 |
month, mm, mmonth, mm, m | ОктябрьOctober |
dayofyear, dy, ydayofyear, dy, y | 303303 |
day, dd, dday, dd, d | 3030 |
week, wk, wwweek, wk, ww | 4444 |
weekday, dwweekday, dw | ВторникTuesday |
hour, hhhour, hh | 1212 |
minute, nminute, n | 1515 |
second, ss, ssecond, ss, s | 3232 |
millisecond, msmillisecond, ms | 123123 |
microsecond, mcsmicrosecond, mcs | 123456123456 |
nanosecond, nsnanosecond, ns | 123456700123456700 |
TZoffset, tzTZoffset, tz | +05:10+05:10 |
ISO_WEEK, ISOWK, ISOWWISO_WEEK, ISOWK, ISOWW | 4444 |
SQL References
SQL Keywords
ADD
ADD CONSTRAINT
ALTER
ALTER COLUMN
ALTER TABLE
ALL
AND
ANY
AS
ASC
BACKUP DATABASE
BETWEEN
CASE
CHECK
COLUMN
CONSTRAINT
CREATE
CREATE DATABASE
CREATE INDEX
CREATE OR REPLACE VIEW
CREATE TABLE
CREATE PROCEDURE
CREATE UNIQUE INDEX
CREATE VIEW
DATABASE
DEFAULT
DELETE
DESC
DISTINCT
DROP
DROP COLUMN
DROP CONSTRAINT
DROP DATABASE
DROP DEFAULT
DROP INDEX
DROP TABLE
DROP VIEW
EXEC
EXISTS
FOREIGN KEY
FROM
FULL OUTER JOIN
GROUP BY
HAVING
IN
INDEX
INNER JOIN
INSERT INTO
INSERT INTO SELECT
IS NULL
IS NOT NULL
JOIN
LEFT JOIN
LIKE
LIMIT
NOT
NOT NULL
OR
ORDER BY
OUTER JOIN
PRIMARY KEY
PROCEDURE
RIGHT JOIN
ROWNUM
SELECT
SELECT DISTINCT
SELECT INTO
SELECT TOP
SET
TABLE
TOP
TRUNCATE TABLE
UNION
UNION ALL
UNIQUE
UPDATE
VALUES
VIEW
WHERE
MySQL Functions
String Functions
ASCII
CHAR_LENGTH
CHARACTER_LENGTH
CONCAT
CONCAT_WS
FIELD
FIND_IN_SET
FORMAT
INSERT
INSTR
LCASE
LEFT
LENGTH
LOCATE
LOWER
LPAD
LTRIM
MID
POSITION
REPEAT
REPLACE
REVERSE
RIGHT
RPAD
RTRIM
SPACE
STRCMP
SUBSTR
SUBSTRING
SUBSTRING_INDEX
TRIM
UCASE
UPPER
Numeric Functions
ABS
ACOS
ASIN
ATAN
ATAN2
AVG
CEIL
CEILING
COS
COT
COUNT
DEGREES
DIV
EXP
FLOOR
GREATEST
LEAST
LN
LOG
LOG10
LOG2
MAX
MIN
MOD
PI
POW
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
SUM
TAN
TRUNCATE
Date Functions
ADDDATE
ADDTIME
CURDATE
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
CURTIME
DATE
DATEDIFF
DATE_ADD
DATE_FORMAT
DATE_SUB
DAY
DAYNAME
DAYOFMONTH
DAYOFWEEK
DAYOFYEAR
EXTRACT
FROM_DAYS
HOUR
LAST_DAY
LOCALTIME
LOCALTIMESTAMP
MAKEDATE
MAKETIME
MICROSECOND
MINUTE
MONTH
MONTHNAME
NOW
PERIOD_ADD
PERIOD_DIFF
QUARTER
SECOND
SEC_TO_TIME
STR_TO_DATE
SUBDATE
SUBTIME
SYSDATE
TIME
TIME_FORMAT
TIME_TO_SEC
TIMEDIFF
TIMESTAMP
TO_DAYS
WEEK
WEEKDAY
WEEKOFYEAR
YEAR
YEARWEEK
Advanced Functions
BIN
BINARY
CASE
CAST
COALESCE
CONNECTION_ID
CONV
CONVERT
CURRENT_USER
DATABASE
IF
IFNULL
ISNULL
LAST_INSERT_ID
NULLIF
SESSION_USER
SYSTEM_USER
USER
VERSION
SQL Server Functions
String Functions
ASCII
CHAR
CHARINDEX
CONCAT
Concat with +
CONCAT_WS
DATALENGTH
DIFFERENCE
FORMAT
LEFT
LEN
LOWER
LTRIM
NCHAR
PATINDEX
QUOTENAME
REPLACE
REPLICATE
REVERSE
RIGHT
RTRIM
SOUNDEX
SPACE
STR
STUFF
SUBSTRING
TRANSLATE
TRIM
UNICODE
UPPER
Numeric Functions
ABS
ACOS
ASIN
ATAN
ATN2
AVG
CEILING
COUNT
COS
COT
DEGREES
EXP
FLOOR
LOG
LOG10
MAX
MIN
PI
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
SQUARE
SUM
TAN
Date Functions
CURRENT_TIMESTAMP
DATEADD
DATEDIFF
DATEFROMPARTS
DATENAME
DATEPART
DAY
GETDATE
GETUTCDATE
ISDATE
MONTH
SYSDATETIME
YEAR
Advanced Functions
CAST
COALESCE
CONVERT
CURRENT_USER
IIF
ISNULL
ISNUMERIC
NULLIF
SESSION_USER
SESSIONPROPERTY
SYSTEM_USER
USER_NAME
MS Access Functions
String Functions
Asc
Chr
Concat with &
CurDir
Format
InStr
InstrRev
LCase
Left
Len
LTrim
Mid
Replace
Right
RTrim
Space
Split
Str
StrComp
StrConv
StrReverse
Trim
UCase
Numeric Functions
Abs
Atn
Avg
Cos
Count
Exp
Fix
Format
Int
Max
Min
Randomize
Rnd
Round
Sgn
Sqr
Sum
Val
Date Functions
Date
DateAdd
DateDiff
DatePart
DateSerial
DateValue
Day
Format
Hour
Minute
Month
MonthName
Now
Second
Time
TimeSerial
TimeValue
Weekday
WeekdayName
Year
Other Functions
CurrentUser
Environ
IsDate
IsNull
IsNumeric
SQL Quick Ref
Функции, характеризующие момент (значение аргумента)
DATE(datetime) — извлекает из значения даты и времени суток
в формате DATETIME (‘YYYY-MM-DD hh:mm:ss’) только дату, отсекая часы, минуты и секунды.
TIME(datetime) — извлекает из значения даты и времени суток
в формате DATETIME (‘YYYY-MM-DD hh:mm:ss’) только время суток, отсекая дату.
TIMESTAMP(param) — принимает в качестве аргумента дату и время
суток в полном или кратком формате и возвращает полный вариант в формате
DATETIME (‘YYYY-MM-DD hh:mm:ss’).
DAY(date), DAYOFMONTH(date) — принимают в качестве аргумента дату,
и возвращают порядковый номер дня в месяце (от 1 до 31).
DAYNAME(date) — принимает в качестве аргумента дату,
и возвращает день недели в виде полного слова на английском языке.
DAYOFWEEK(date) — принимает в качестве аргумента дату,
и возвращает порядкоый номер дня недели от 1 (воскресенье) до 7 (суббота).
WEEKDAY(date) — принимает в качестве аргумента дату,
и возвращает порядкоый номер дня недели от 0 (понедельник) до 6 (воскресенье).
WEEK(date) — принимает в качестве аргумента дату,
и возвращает номер недели в году для этой даты от 0 до 53.
WEEKOFYEAR(datetime) — возвращает порядковый номер недели в году
для даты datetime от 1 до 53.
MONTH(datetime) — возвращает числовое значение месяца года от 1 до 12
для даты datetime.
MONTHNAME(datetime) — возвращает строку с названием месяца
для даты datetime.
QUARTER(datetime) — возвращает значение квартала от 1 до 4
для даты datetime, которая может быть передана в формате ‘YYYY-MM-DD’ или ‘YYYY-MM-DD hh:mm:ss’.
YEAR(datetime) — возвращает год от 1000 до 9999
для даты datetime.
DAYOFYEAR(date) — возвращает порядковый номер дня в году
от 1 до 366 для даты date.
HOUR(datetime) — возвращает значение часа от 0 до 23 для
времени datetime.
MINUTE(datetime) — возвращает значение минут от 0 до 59 для
времени datetime.
SECOND(time) — возвращает количество секунд для времени суток
time, которое задаётся либо в виде строки ‘hh:mm:ss’, либо числа hhmmss.
EXTRACT(type FROM datetime) — принимает дату и время суток datetime
и возвращает часть, определяемую параметром type. Значениями параметра могут быть YEAR, MONTH, DAY,
HOUR, MINUTE, SECOND.
КомментарииRemarks
Значение ydm параметра DATEFORMAT не поддерживается для типов данных date, datetime2 и datetimeoffset.The DATEFORMAT ydm isn’t supported for date, datetime2, and datetimeoffset data types.
Параметр DATEFORMAT может интерпретировать символьные строки по-разному для разных типов данных даты в зависимости от их формата строк.The DATEFORMAT setting may interpret character strings differently for date data types, depending on their string format. Например, интерпретации datetime и smalldatetime могут не соответствовать date, datetime2 или datetimeoffset.For example, datetime and smalldatetime interpretations may not match date, datetime2, or datetimeoffset. Этот параметр влияет на интерпретацию символьных строк при их преобразовании в значения даты для базы данных.DATEFORMAT affects the interpretation of character strings as they’re converted to date values for the database. Он не влияет на отображение значений типов данных даты, хранящихся в базе данных, а также на формат их хранения.It doesn’t affect the display of date data type values, nor their storage format in the database.
Некоторые форматы символьных строк, например ISO 8601, интерпретируются независимо от параметра DATEFORMAT.Some character string formats, for example ISO 8601, are interpreted independently of the DATEFORMAT setting.
Установка SET DATEFORMAT происходит во время выполнения, а не во время синтаксического анализа.The setting of SET DATEFORMAT is set at execute or run time and not at parse time.
SET DATEFORMAT имеет преимущество над неявной установкой формата даты SET LANGUAGE.SET DATEFORMAT overrides the implicit date format setting of SET LANGUAGE.
RemarksRemarks
Функция FORMAT возвращает значение NULL для ошибок, когда culture не является valid.FORMAT returns NULL for errors other than a culture that is not valid. Например, NULL возвращается, если значение, заданное в format, недопустимо.For example, NULL is returned if the value specified in format is not valid.
Функция FORMAT не детерминирована.The FORMAT function is nondeterministic.
Функция FORMAT предполагает наличие среды выполнения CLR платформы .NET Framework.FORMAT relies on the presence of the .NET Framework Common Language Runtime (CLR).
Эта функция не может работать удаленно, так как возможность ее работы зависит от наличия среды CLR.This function cannot be remoted since it depends on the presence of the CLR. Удаленный вызов функции, требующей наличия среды CLR, может привести к ошибке на удаленном сервере.Remoting a function that requires the CLR, could cause an error on the remote server.
Функция FORMAT использует правила форматирования среды CLR, согласно которым двоеточия и точки должны экранироваться.FORMAT relies upon CLR formatting rules, which dictate that colons and periods must be escaped. Поэтому когда строка форматирования (второй параметр) содержит двоеточие или точку, они должны быть экранированы обратной косой чертой, если входное значение (первый параметр) имеет тип данных time.Therefore, when the format string (second parameter) contains a colon or period, the colon or period must be escaped with backslash when an input value (first parameter) is of the time data type. См. пример .See .
В приведенной ниже таблице перечислены приемлемые типы данных для аргумента value, а также содержатся сведения об их сопоставлении с эквивалентными типами .NET Framework.The following table lists the acceptable data types for the value argument together with their .NET Framework mapping equivalent types.
КатегорияCategory | ТипType | Тип .NET.NET type |
---|---|---|
ЧисловойNumeric | BIGINTbigint | Int64Int64 |
ЧисловойNumeric | INTint | Int32Int32 |
ЧисловойNumeric | smallintsmallint | Int16Int16 |
ЧисловойNumeric | tinyinttinyint | ByteByte |
ЧисловойNumeric | Decimaldecimal | SqlDecimalSqlDecimal |
ЧисловойNumeric | NUMERICnumeric | SqlDecimalSqlDecimal |
ЧисловойNumeric | FLOATfloat | DoubleDouble |
ЧисловойNumeric | realreal | ОдинSingle |
ЧисловойNumeric | smallmoneysmallmoney | DecimalDecimal |
ЧисловойNumeric | moneymoney | DecimalDecimal |
Дата и времяDate and Time | Датаdate | Дата и времяDateTime |
Дата и времяDate and Time | timetime | TimeSpanTimeSpan |
Дата и времяDate and Time | DATETIMEdatetime | Дата и времяDateTime |
Дата и времяDate and Time | smalldatetimesmalldatetime | Дата и времяDateTime |
Дата и времяDate and Time | datetime2datetime2 | Дата и времяDateTime |
Дата и времяDate and Time | datetimeoffsetdatetimeoffset | DateTimeOffsetDateTimeOffset |
tzoffsettzoffset
возвращает значение tzoffset (tz) как количество минут (со знаком). returns the tzoffset (tz) value as the number of minutes (signed). В результате выполнения этой инструкции возвращается смещение часового пояса 310 минут:This statement returns a time zone offset of 310 minutes:
Функция отображает значение tzoffset описанным ниже образом. renders the tzoffset value as follows:
- Для datetimeoffset и datetime2 значение tzoffset возвращает временное смещение в минутах, причем для datetime2 смещение всегда равно 0 минут.For datetimeoffset and datetime2, tzoffset returns the time offset in minutes, where the offset for datetime2 is always 0 minutes.
- Для типов данных, которые могут быть неявно преобразованы в datetimeoffset или datetime2, функция возвращает временное смещение в минутах.For data types that can implicitly convert to datetimeoffset or datetime2, returns the time offset in minutes. Для остальных типов даты и времени этого не происходит.Exception: other date / time data types.
- Для параметров любых других типов возвращается ошибка.Parameters of all other types result in an error.
Установка .ipa приложений
Файл .ipa – это формат файла приложений, который предназначен для установки на iPhone и на остальные устройства i-семейства. Данный файл больше нигде невозможно запустить, даже на симуляторе iOS для ПК. К счастью, эти файлы можно открывать в обход стандартных приложений типа Айтюнс, но для этого потребуется проводить взлом устройства или идти иными непростыми путями.
Существует всего два вида этих приложений – хакнутые и нехакнутые. Хакнутые приложения обычно взламываются при помощи Crackulous или подобных ему скриптов. Такой тип приложений можно найти практически на любом торрент-трекере. За них вам не придется платить, даже если они были платными, но у них имеется и обратная сторона медали в виде необходимости взлома операционной системы iOS, что грозит потенциальной угрозой безопасности.
Устанавливать файлы мы будем через Айтулс, но прежде чем приступить к описанию процесса, рассмотрим банальные проблемы, которые могут возникнуть с этим типом файлов.
АргументыArguments
format | @ format_varformat | @format_varПорядок следования составляющих частей даты.Is the order of the date parts. Допустимые параметры: mdy, dmy, ymd, ydm, myd и dym.Valid parameters are mdy, dmy, ymd, ydm, myd, and dym. Может быть задано в формате Юникод или в виде двухбайтовой кодировки (DBCS), преобразованной в Юникод.Can be either Unicode or double-byte character sets (DBCS) converted to Unicode. Для языкового стандарта «Английский (США)» значение по умолчанию равно mdy.The U.S. English default is mdy. Значения параметра DATEFORMAT по умолчанию для всех поддерживаемых языков см. в разделе sp_helplanguage (Transact-SQL).For the default DATEFORMAT of all support languages, see sp_helplanguage (Transact-SQL).
Пример
Рассмотрим несколько примеров функции TO_DATE, чтобы понять, как использовать функцию TO_DATE в Oracle/PLSQL.
Oracle PL/SQL
SELECT TO_DATE(‘2019/07/22’, ‘yyyy/mm/dd’) FROM DUAL;
—Результат: 22.07.2019
SELECT TO_DATE(‘072219’, ‘MMDDYY’) FROM DUAL;
—Результат: 22.07.2019
SELECT TO_DATE(‘20190722’, ‘yyyymmdd’) FROM DUAL;
—Результат: 22.07.2019
SELECT TO_DATE(‘30.01.2019 18:30:52’, ‘DD.MM.YYYY HH24:MI:SS’) FROM DUAL;
—Результат: 30.01.2019 18:30:52
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
SELECTTO_DATE(‘2019/07/22′,’yyyy/mm/dd’)FROMDUAL; SELECTTO_DATE(‘072219′,’MMDDYY’)FROMDUAL; SELECTTO_DATE(‘20190722′,’yyyymmdd’)FROMDUAL; SELECTTO_DATE(‘30.01.2019 18:30:52′,’DD.MM.YYYY HH24:MI:SS’)FROMDUAL; |
How to get different SQL Server date formats
- Use the date format option along with CONVERT function
- To get YYYY-MM-DD use SELECT CONVERT(varchar, getdate(), 23)
- To get MM/DD/YYYY use SELECT CONVERT(varchar, getdate(), 1)
- Check out the chart to get a list of all format options
Below is a list of formats and an example of the output. The date used
for all of these examples is «2006-12-30 00:38:54.840».
DATE ONLY FORMATS | ||
Format # | Query | Sample |
---|---|---|
1 | select convert(varchar, getdate(), 1) | 12/30/06 |
2 | select convert(varchar, getdate(), 2) | 06.12.30 |
3 | select convert(varchar, getdate(), 3) | 30/12/06 |
4 | select convert(varchar, getdate(), 4) | 30.12.06 |
5 | select convert(varchar, getdate(), 5) | 30-12-06 |
6 | select convert(varchar, getdate(), 6) | 30 Dec 06 |
7 | select convert(varchar, getdate(), 7) | Dec 30, 06 |
10 | select convert(varchar, getdate(), 10) | 12-30-06 |
11 | select convert(varchar, getdate(), 11) | 06/12/30 |
12 | select convert(varchar, getdate(), 12) | 061230 |
23 | select convert(varchar, getdate(), 23) | 2006-12-30 |
101 | select convert(varchar, getdate(), 101) | 12/30/2006 |
102 | select convert(varchar, getdate(), 102) | 2006.12.30 |
103 | select convert(varchar, getdate(), 103) | 30/12/2006 |
104 | select convert(varchar, getdate(), 104) | 30.12.2006 |
105 | select convert(varchar, getdate(), 105) | 30-12-2006 |
106 | select convert(varchar, getdate(), 106) | 30 Dec 2006 |
107 | select convert(varchar, getdate(), 107) | Dec 30, 2006 |
110 | select convert(varchar, getdate(), 110) | 12-30-2006 |
111 | select convert(varchar, getdate(), 111) | 2006/12/30 |
112 | select convert(varchar, getdate(), 112) | 20061230 |
TIME ONLY FORMATS | ||
8 | select convert(varchar, getdate(), 8) | 00:38:54 |
14 | select convert(varchar, getdate(), 14) | 00:38:54:840 |
24 | select convert(varchar, getdate(), 24) | 00:38:54 |
108 | select convert(varchar, getdate(), 108) | 00:38:54 |
114 | select convert(varchar, getdate(), 114) | 00:38:54:840 |
DATE & TIME FORMATS | ||
select convert(varchar, getdate(), 0) | Dec 12 2006 12:38AM | |
9 | select convert(varchar, getdate(), 9) | Dec 30 2006 12:38:54:840AM |
13 | select convert(varchar, getdate(), 13) | 30 Dec 2006 00:38:54:840AM |
20 | select convert(varchar, getdate(), 20) | 2006-12-30 00:38:54 |
21 | select convert(varchar, getdate(), 21) | 2006-12-30 00:38:54.840 |
22 | select convert(varchar, getdate(), 22) | 12/30/06 12:38:54 AM |
25 | select convert(varchar, getdate(), 25) | 2006-12-30 00:38:54.840 |
100 | select convert(varchar, getdate(), 100) | Dec 30 2006 12:38AM |
109 | select convert(varchar, getdate(), 109) | Dec 30 2006 12:38:54:840AM |
113 | select convert(varchar, getdate(), 113) | 30 Dec 2006 00:38:54:840 |
120 | select convert(varchar, getdate(), 120) | 2006-12-30 00:38:54 |
121 | select convert(varchar, getdate(), 121) | 2006-12-30 00:38:54.840 |
126 | select convert(varchar, getdate(), 126) | 2006-12-30T00:38:54.840 |
127 | select convert(varchar, getdate(), 127) | 2006-12-30T00:38:54.840 |
ISLAMIC CALENDAR DATES | ||
130 | select convert(nvarchar, getdate(), 130) | |
131 | select convert(nvarchar, getdate(), 131) | 10/12/1427 12:38:54:840AM |
You can also format the date or time without dividing characters, as well as
concatenate the date and time string:
Sample statement | Output |
---|---|
select replace(convert(varchar, getdate(),101),’/’,») | 12302006 |
select replace(convert(varchar, getdate(),101),’/’,») + replace(convert(varchar, getdate(),108),’:’,») |
12302006004426 |
If you want to get a list of all valid date and time formats, you could use the
code below and change the @date to GETDATE() or any other date you want to use.
This will output just the valid formats.
DECLARE @counter INT = 0 DECLARE @date DATETIME = '2006-12-30 00:38:54.840' CREATE TABLE #dateFormats (dateFormatOption int, dateOutput nvarchar(40)) WHILE (@counter <= 150 ) BEGIN BEGIN TRY INSERT INTO #dateFormats SELECT CONVERT(nvarchar, @counter), CONVERT(nvarchar,@date, @counter) SET @counter = @counter + 1 END TRY BEGIN CATCH; SET @counter = @counter + 1 IF @counter >= 150 BEGIN BREAK END END CATCH END SELECT * FROM #dateFormats
Типы данных SQL
Типы данных SQL разделяются на три группы:
— строковые;
— с плавающей точкой (дробные числа);
— целые числа, дата и время.
-
Типы данных SQL строковые
Типы данных SQL Описание Строки фиксированной длиной (могут содержать буквы, цифры и специальные символы). Фиксированный размер указан в скобках. Можно записать до 255 символов Может хранить не более 255 символов. Может хранить не более 255 символов. Может хранить не более 65 535 символов. Может хранить не более 65 535 символов. Может хранить не более 16 777 215 символов. Может хранить не более 16 777 215 символов. Может хранить не более 4 294 967 295 символов. Может хранить не более 4 294 967 295 символов. Позволяет вводить список допустимых значений. Можно ввести до 65535 значений в SQL Тип данных ENUM список. Если при вставке значения не будет присутствовать в списке ENUM, то мы получим пустое значение.
Ввести возможные значения можно в таком формате:SQL Тип данных SET напоминает ENUM за исключением того, что SET может содержать до 64 значений. -
Типы данных SQL с плавающей точкой (дробные числа) и целые числа
Типы данных SQL Описание Может хранить числа от -128 до 127 Диапазон от -32 768 до 32 767 Диапазон от -8 388 608 до 8 388 607 Диапазон от -2 147 483 648 до 2 147 483 647 Диапазон от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 Число с плавающей точкой небольшой точности. Число с плавающей точкой двойной точности. Дробное число, хранящееся в виде строки. -
Типы данных SQL — Дата и время
Типы данных SQL Описание Дата в формате ГГГГ-ММ-ДД Дата и время в формате Дата и время в формате timestamp. Однако при получении значения поля оно отображается не в формате timestamp, а в виде ГГГГ-ММ-ДД ЧЧ:ММ:СС Время в формате Год в двух значной или в четырехзначном формате.
SQL References
SQL Keywords
ADD
ADD CONSTRAINT
ALTER
ALTER COLUMN
ALTER TABLE
ALL
AND
ANY
AS
ASC
BACKUP DATABASE
BETWEEN
CASE
CHECK
COLUMN
CONSTRAINT
CREATE
CREATE DATABASE
CREATE INDEX
CREATE OR REPLACE VIEW
CREATE TABLE
CREATE PROCEDURE
CREATE UNIQUE INDEX
CREATE VIEW
DATABASE
DEFAULT
DELETE
DESC
DISTINCT
DROP
DROP COLUMN
DROP CONSTRAINT
DROP DATABASE
DROP DEFAULT
DROP INDEX
DROP TABLE
DROP VIEW
EXEC
EXISTS
FOREIGN KEY
FROM
FULL OUTER JOIN
GROUP BY
HAVING
IN
INDEX
INNER JOIN
INSERT INTO
INSERT INTO SELECT
IS NULL
IS NOT NULL
JOIN
LEFT JOIN
LIKE
LIMIT
NOT
NOT NULL
OR
ORDER BY
OUTER JOIN
PRIMARY KEY
PROCEDURE
RIGHT JOIN
ROWNUM
SELECT
SELECT DISTINCT
SELECT INTO
SELECT TOP
SET
TABLE
TOP
TRUNCATE TABLE
UNION
UNION ALL
UNIQUE
UPDATE
VALUES
VIEW
WHERE
MySQL Functions
String Functions
ASCII
CHAR_LENGTH
CHARACTER_LENGTH
CONCAT
CONCAT_WS
FIELD
FIND_IN_SET
FORMAT
INSERT
INSTR
LCASE
LEFT
LENGTH
LOCATE
LOWER
LPAD
LTRIM
MID
POSITION
REPEAT
REPLACE
REVERSE
RIGHT
RPAD
RTRIM
SPACE
STRCMP
SUBSTR
SUBSTRING
SUBSTRING_INDEX
TRIM
UCASE
UPPER
Numeric Functions
ABS
ACOS
ASIN
ATAN
ATAN2
AVG
CEIL
CEILING
COS
COT
COUNT
DEGREES
DIV
EXP
FLOOR
GREATEST
LEAST
LN
LOG
LOG10
LOG2
MAX
MIN
MOD
PI
POW
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
SUM
TAN
TRUNCATE
Date Functions
ADDDATE
ADDTIME
CURDATE
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
CURTIME
DATE
DATEDIFF
DATE_ADD
DATE_FORMAT
DATE_SUB
DAY
DAYNAME
DAYOFMONTH
DAYOFWEEK
DAYOFYEAR
EXTRACT
FROM_DAYS
HOUR
LAST_DAY
LOCALTIME
LOCALTIMESTAMP
MAKEDATE
MAKETIME
MICROSECOND
MINUTE
MONTH
MONTHNAME
NOW
PERIOD_ADD
PERIOD_DIFF
QUARTER
SECOND
SEC_TO_TIME
STR_TO_DATE
SUBDATE
SUBTIME
SYSDATE
TIME
TIME_FORMAT
TIME_TO_SEC
TIMEDIFF
TIMESTAMP
TO_DAYS
WEEK
WEEKDAY
WEEKOFYEAR
YEAR
YEARWEEK
Advanced Functions
BIN
BINARY
CASE
CAST
COALESCE
CONNECTION_ID
CONV
CONVERT
CURRENT_USER
DATABASE
IF
IFNULL
ISNULL
LAST_INSERT_ID
NULLIF
SESSION_USER
SYSTEM_USER
USER
VERSION
SQL Server Functions
String Functions
ASCII
CHAR
CHARINDEX
CONCAT
Concat with +
CONCAT_WS
DATALENGTH
DIFFERENCE
FORMAT
LEFT
LEN
LOWER
LTRIM
NCHAR
PATINDEX
QUOTENAME
REPLACE
REPLICATE
REVERSE
RIGHT
RTRIM
SOUNDEX
SPACE
STR
STUFF
SUBSTRING
TRANSLATE
TRIM
UNICODE
UPPER
Numeric Functions
ABS
ACOS
ASIN
ATAN
ATN2
AVG
CEILING
COUNT
COS
COT
DEGREES
EXP
FLOOR
LOG
LOG10
MAX
MIN
PI
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
SQUARE
SUM
TAN
Date Functions
CURRENT_TIMESTAMP
DATEADD
DATEDIFF
DATEFROMPARTS
DATENAME
DATEPART
DAY
GETDATE
GETUTCDATE
ISDATE
MONTH
SYSDATETIME
YEAR
Advanced Functions
CAST
COALESCE
CONVERT
CURRENT_USER
IIF
ISNULL
ISNUMERIC
NULLIF
SESSION_USER
SESSIONPROPERTY
SYSTEM_USER
USER_NAME
MS Access Functions
String Functions
Asc
Chr
Concat with &
CurDir
Format
InStr
InstrRev
LCase
Left
Len
LTrim
Mid
Replace
Right
RTrim
Space
Split
Str
StrComp
StrConv
StrReverse
Trim
UCase
Numeric Functions
Abs
Atn
Avg
Cos
Count
Exp
Fix
Format
Int
Max
Min
Randomize
Rnd
Round
Sgn
Sqr
Sum
Val
Date Functions
Date
DateAdd
DateDiff
DatePart
DateSerial
DateValue
Day
Format
Hour
Minute
Month
MonthName
Now
Second
Time
TimeSerial
TimeValue
Weekday
WeekdayName
Year
Other Functions
CurrentUser
Environ
IsDate
IsNull
IsNumeric
SQL Quick Ref
ПримерыExamples
A.A. Простой пример функции FORMATSimple FORMAT example
В следующем примере возвращается простой набор данных, отформатированный для различных языков и региональных параметров.The following example returns a simple date formatted for different cultures.
Результирующий набор:Here is the result set.
В следующем примере показано форматирование числовых значений с помощью заданного пользовательского формата.The following example shows formatting numeric values by specifying a custom format. В примере предполагается, что текущая дата — 27 сентября 2012 г.The example assumes that the current date is September 27, 2012. Дополнительные сведения об этих и других пользовательских форматах см. в статье Пользовательские строки форматирования чисел.For more information about these and other custom formats, see Custom Numeric Format Strings.
Результирующий набор:Here is the result set.
В.C. Функция FORMAT с числовыми типамиFORMAT with numeric types
В приведенном ниже примере возвращаются 5 строк из таблицы Sales.CurrencyRate в базе данных AdventureWorks2012AdventureWorks2012.The following example returns 5 rows from the Sales.CurrencyRate table in the AdventureWorks2012AdventureWorks2012 database. Столбец EndOfDateRate в таблице хранится как тип money.The column EndOfDateRate is stored as type money in the table. В этом примере столбец возвращается неформатированным, затем форматируется в формате .NET Number, формате типа General и Currency.In this example, the column is returned unformatted and then formatted by specifying the .NET Number format, General format, and Currency format types. Дополнительные сведения об этих и других числовых форматах см. в статье Стандартные строки форматирования чисел.For more information about these and other numeric formats, see Standard Numeric Format Strings.
Результирующий набор:Here is the result set.
Этот пример задает немецкий язык и региональные параметры (de-de).This example specifies the German culture (de-de).
Г.D. Использование функции FORMAT с типами данных времениFORMAT with time data types
В этих случаях функция FORMAT возвращает значение NULL, так как символы и не экранированы.FORMAT returns NULL in these cases because and are not escaped.
Функция FORMAT возвращает форматированную строку, так как символы и экранированы.Format returns a formatted string because the and are escaped.
Формат возвращает текущее время в формате с AM или PMFormat returns a formatted current time with AM or PM specified
Формат возвращает заданное время с AMFormat returns the specified time, displaying AM
Формат возвращает заданное время с PMFormat returns the specified time, displaying PM
Формат возвращает заданное время в 24-часовом форматеFormat returns the specified time in 24h format