* Update of english version of descriprion of the table function `file`. * New syntax for ReplacingMergeTree. Some improvements in text. * Significantly change article about SummingMergeTree. Article is restructured, text is changed in many places of the document. New syntax for table creation is described. * Descriptions of AggregateFunction and AggregatingMergeTree are updated. Russian version. * New syntax for new syntax of CREATE TABLE * Added english docs on Aggregating, Replacing and SummingMergeTree. * CollapsingMergeTree docs. English version. * 1. Update of CollapsingMergeTree. 2. Minor changes in markup * Update aggregatefunction.md * Update aggregatefunction.md * Update aggregatefunction.md * Update aggregatingmergetree.md * GraphiteMergeTree docs update. New syntax for creation of Replicated* tables. Minor changes in *MergeTree tables creation syntax. * Markup fix * Markup and language fixes * Clarification in the CollapsingMergeTree article * Clarifications for MySQL table engine and toStartOfMonth function
2.4 KiB
MySQL
Движок MySQL позволяет выполнять SELECT
запросы над данными, хранящимися на удалённом MySQL сервере.
Формат вызова:
MySQL('host:port', 'database', 'table', 'user', 'password'[, replace_query, 'on_duplicate_clause']);
Параметры вызова
-
host:port
— Адрес сервера MySQL. -
database
— Имя базы данных на сервере MySQL. -
table
— Имя таблицы. -
user
— Пользователь MySQL. -
password
— Пароль пользователя. -
replace_query
— Флаг, устанавливающий замену запросаINSERT INTO
наREPLACE INTO
. Еслиreplace_query=1
, то запрос заменяется. -
on_duplicate_clause
— Добавляет выражениеON DUPLICATE KEY 'on_duplicate_clause'
в запросINSERT
.Например,
INSERT INTO t (c1,c2) VALUES ('a', 2) ON DUPLICATE KEY UPDATE c2 = c2 + 1
, гдеon_duplicate_clause
—UPDATE c2 = c2 + 1
. Какие выраженияon_duplicate_clause
вы можете использовать сON DUPLICATE KEY
, смотрите в документации MySQL.Чтобы указать
on_duplicate_clause
необходимо передать0
в параметрreplace_query
. Если одновременно передатьreplace_query = 1
иon_duplicate_clause
, то ClickHouse сгенерирует исключение.
На данный момент простые условия WHERE
, такие как =, !=, >, >=, <, <=
будут выполняться на стороне сервера MySQL.
Остальные условия и ограничение выборки LIMIT
будут выполнены в ClickHouse только после выполнения запроса к MySQL.
Движок MySQL
не поддерживает тип данных Nullable, поэтому при чтении данных из таблиц MySQL NULL
преобразуются в значения по умолчанию для заданного типа столбца, обычно это 0 или пустая строка.