diff --git a/docs/images/ebnf/to_char.svg b/docs/images/ebnf/to_char.svg new file mode 100644 index 0000000000000000000000000000000000000000..5f9aff470ec2c2a1a5246b2833412f8249f4b0e9 Binary files /dev/null and b/docs/images/ebnf/to_char.svg differ diff --git a/docs/reference/ansi_sql.md b/docs/reference/ansi_sql.md index 3d6afaf2079a1c79368a3adb51ffee28f1d6b4ae..c501c73bb0123a06c63e7b1c4d2149140a7cf69c 100644 --- a/docs/reference/ansi_sql.md +++ b/docs/reference/ansi_sql.md @@ -1176,7 +1176,7 @@ td.td3 ul { <tr> <td class="center"><span class="full">—</span></td> <td>TO_CHAR</td> - <td class="td3 center">TO_CHAR</td> + <td class="td3 center">[TO_CHAR](sql/to_char.md)</td> <td></td> </tr> <tr> diff --git a/docs/reference/sql/to_char.md b/docs/reference/sql/to_char.md new file mode 100644 index 0000000000000000000000000000000000000000..a0d23f8bb9663c8bc0b847a790051def8541b8c0 --- /dev/null +++ b/docs/reference/sql/to_char.md @@ -0,0 +1,50 @@ +# TO_CHAR {: #to_char } + +Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ `TO_CHAR` преобразует объект *expression* типа [DATETIME] в Ñтроку +типа [TEXT] ÑоглаÑно формату *format*. + +Значение *format* должно ÑоответÑтвовать Ñпецификации [strftime]. + +[TEXT]: ../sql_types.md#text +[DATETIME]: ../sql_types.md#datetime +[strftime]: https://man.freebsd.org/cgi/man.cgi?query=strftime + +## СинтакÑÐ¸Ñ {: #syntax } + + + +### Выражение {: #expression } + +<details><summary>Диаграмма</summary><p> + +</p></details> + +### Литерал {: #literal } + +<details><summary>Диаграмма</summary><p> + +</p></details> + +## Примеры {: #examples } + +??? example "ТеÑтовые таблицы" + Примеры иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´ включают в ÑÐµÐ±Ñ Ð·Ð°Ð¿Ñ€Ð¾ÑÑ‹ к [теÑтовым + таблицам](../legend.md). + +```sql title="Преобразование объектов DATETIME в Ñтроковые литералы заданного формата" +picodata> SELECT to_char(since, 'In stock since: %d %b %Y') FROM orders; ++-------------------------------+ +| COL_1 | ++===============================+ +| "In stock since: 13 Feb 2024" | +|-------------------------------| +| "In stock since: 29 Jan 2024" | +|-------------------------------| +| "In stock since: 11 Nov 2023" | +|-------------------------------| +| "In stock since: 11 May 2024" | +|-------------------------------| +| "In stock since: 01 Apr 2024" | ++-------------------------------+ +(5 rows) +``` diff --git a/docs/sql_index.md b/docs/sql_index.md index 889a16208cc4be9918c6859ba32f094b5d2d0f07..869709f82ae18d1e42d82b23be0f7df93b37f713 100644 --- a/docs/sql_index.md +++ b/docs/sql_index.md @@ -48,4 +48,5 @@ ### Дата и Ð²Ñ€ÐµÐ¼Ñ {: #date_and_time } +* [TO_CHAR](reference/sql/to_char.md) * [TO_DATE](reference/sql/to_date.md) diff --git a/mkdocs.yml b/mkdocs.yml index 9ac4141decb0a095cae0d664f3ce2d2f2f4295e0..91db98afc285e2d4f390bc8c8d8977fbb01f3f7b 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -86,6 +86,7 @@ nav: - reference/sql/cast.md - reference/sql/trim.md - Дата и времÑ: + - reference/sql/to_char.md - reference/sql/to_date.md - reference/cli.md - reference/config.md