doc: clarifications [#METR-2944].

This commit is contained in:
Alexey Milovidov 2016-07-14 06:01:44 +03:00
parent cb53dcbc2f
commit 151b8408cb
2 changed files with 14 additions and 3 deletions

View File

@ -922,7 +922,9 @@ Examples: %%1%%, %%18446744073709551615%%, %%0xDEADBEEF%%, %%01%%, %%0.1%%, %%1e
<h4>String literals</h4>
Only string literals in single quotes are supported. The enclosed characters can be backslash-escaped. The following escape sequences have special meanings: %%\b%%, %%\f%%, %%\r%%, %%\n%%, %%\t%%, %%\0%%. In all other cases, escape sequences like <span class="inline-example">\<i>x</i></span>, where <i>x</i> is any character, are transformed to <i>x</i>. This means that the sequences %%\&#39;%% and %%\\%% can be used. The value will have the String type.
Only string literals in single quotes are supported. The enclosed characters can be backslash-escaped. The following escape sequences have special meanings: %%\b%%, %%\f%%, %%\r%%, %%\n%%, %%\t%%, %%\0%%, %%\a%%, %%\v%%, <span class="inline-example">\x<i>HH</i></span>. In all other cases, escape sequences like <span class="inline-example">\<i>c</i></span>, where <i>c</i> is any character, are transformed to <i>c</i>. This means that the sequences %%\&#39;%% and %%\\%% can be used. The value will have the String type.
Minimum set of symbols that must be escaped in string literal is %%'%% and %%\%%.
<h4>Compound literals</h4>
@ -3556,6 +3558,8 @@ The second variant is supported because MySQL uses it when writing tab-separated
Only a small set of symbols are escaped. You can easily stumble onto a string value that your terminal will ruin in output.
Minimum set of symbols that you must escape in TabSeparated format is tab, newline (LF) and backslash.
Arrays are formatted as a list of comma-separated values in square brackets. Number items in the array are formatted as normally, but dates, dates with times, and strings are formatted in single quotes with the same escaping rules as above.
The TabSeparated format is convenient for processing data using custom programs and scripts. It is used by default in the HTTP interface, and in the command-line client&#39;s batch mode. This format also allows transferring data between different DBMSs. For example, you can get a dump from MySQL and upload it to ClickHouse, or vice versa.
@ -3716,6 +3720,8 @@ This format is only appropriate for outputting a query result, not for parsing.
Prints every row in parentheses. Rows are separated by commas. There is no comma after the last row. The values inside the parentheses are also comma-separated. Numbers are output in decimal format without quotes. Arrays are output in square brackets. Strings, dates, and dates with times are output in quotes. Escaping rules and parsing are same as in the TabSeparated format. During formatting, extra spaces aren&#39;t inserted, but during parsing, they are allowed and skipped (except for spaces inside array values, which are not allowed).
Minimum set of symbols that you must escape in Values format is single quote and backslash.
This is the format that is used in INSERT INTO t VALUES ...
But you can also use it for query result.

View File

@ -939,8 +939,9 @@ Connected to ClickHouse server version 0.0.26176.
<h4>Строковые литералы</h4>
Поддерживаются только строковые литералы в одинарных кавычках. Символы внутри могут быть экранированы с помощью обратного слеша. Следующие escape-последовательности имеют соответствующее специальное значение: %%\b%%, %%\f%%, %%\r%%, %%\n%%, %%\t%%, %%\0%%. Во всех остальных случаях, последовательности вида <span class="inline-example">\<i>x</i></span>, где <i>x</i> - любой символ, преобразуется в <i>x</i>. Таким образом, могут быть использованы последовательности %%\'%% и %%\\%%.
Значение будет иметь тип String.
Поддерживаются только строковые литералы в одинарных кавычках. Символы внутри могут быть экранированы с помощью обратного слеша. Следующие escape-последовательности имеют соответствующее специальное значение: %%\b%%, %%\f%%, %%\r%%, %%\n%%, %%\t%%, %%\0%%, %%\a%%, %%\v%%, <span class="inline-example">\x<i>HH</i></span>. Во всех остальных случаях, последовательности вида <span class="inline-example">\<i>c</i></span>, где <i>c</i> - любой символ, преобразуется в <i>c</i>. Таким образом, могут быть использованы последовательности %%\'%% и %%\\%%. Значение будет иметь тип String.
Минимальный набор символов, которых вам необходимо экранировать в строковых литералах: %%'%% and %%\%%.
<h4>Составные литералы</h4>
@ -3616,6 +3617,8 @@ world%%
Второй вариант поддерживается, так как его использует MySQL при записи tab-separated дампа.
Минимальный набор символов, которых вам необходимо экранировать при передаче в TabSeparated формате: таб, перевод строки (LF) и обратный слеш.
Экранируется лишь небольшой набор символов. Вы можете легко наткнуться на строковое значение, которое испортит ваш терминал при выводе в него.
Массивы форматируются в виде списка значений через запятую в квадратных скобках. Элементы массива - числа форматируются как обычно, а даты, даты-с-временем и строки - в одинарных кавычках с такими же правилами экранирования, как указано выше.
@ -3779,6 +3782,8 @@ Extremes:
Выводит каждую строку в скобках. Строки разделены запятыми. После последней строки запятой нет. Значения внутри скобок также разделены запятыми. Числа выводятся в десятичном виде без кавычек. Массивы выводятся в квадратных скобках. Строки, даты, даты-с-временем выводятся в кавычках. Правила экранирования и особенности парсинга аналогичны формату TabSeparated. При форматировании, лишние пробелы не ставятся, а при парсинге - допустимы и пропускаются (за исключением пробелов внутри значений типа массив, которые недопустимы).
Минимальный набор символов, которых вам необходимо экранировать при передаче в Values формате: одинарная кавычка и обратный слеш.
Именно этот формат используется в запросе INSERT INTO t VALUES ...
Но вы также можете использовать его для форматирования результатов запросов.