Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Motor de tabela SQLite

Sem suporte no ClickHouse Cloud

O motor permite importar e exportar dados para o SQLite e oferece suporte a consultas em tabelas do SQLite diretamente do ClickHouse.

Criando uma tabela

    CREATE TABLE [IF NOT EXISTS] [db.]table_name
    (
        name1 [type1],
        name2 [type2], ...
    ) ENGINE = SQLite('db_path', 'table')

Parâmetros do motor

Passando uma consulta em vez de um nome de tabela

Em vez de um nome de tabela, o argumento table pode ser uma consulta SELECT passada ao SQLite como está. A estrutura da tabela é inferida a partir do resultado da consulta. A consulta pode ser escrita como uma subconsulta ou envolvida na função query:

CREATE TABLE sqlite_table ENGINE = SQLite('sqlite.db', (SELECT col1, col2 FROM table1 WHERE col2 > 1));
CREATE TABLE sqlite_table ENGINE = SQLite('sqlite.db', query('SELECT col1, col2 FROM table1 WHERE col2 > 1'));

Essa tabela é somente leitura: INSERT nela não é permitido. A mesma sintaxe também é compatível com a função de tabela sqlite.

Suporte a tipos de dados

Ao especificar explicitamente os tipos de coluna do ClickHouse na definição da tabela, os tipos a seguir do ClickHouse podem ser interpretados a partir de colunas TEXT do SQLite:

Consulte o motor de banco de dados SQLite para ver o mapeamento de tipos padrão.

Exemplo de uso

Exibe uma consulta que cria a tabela SQLite:

SHOW CREATE TABLE sqlite_db.table2;
CREATE TABLE SQLite.table2
(
    `col1` Nullable(Int32),
    `col2` Nullable(String)
)
ENGINE = SQLite('sqlite.db','table2');

Retorna os dados da tabela:

SELECT * FROM sqlite_db.table2 ORDER BY col1;
┌─col1─┬─col2──┐
│    1 │ text1 │
│    2 │ text2 │
│    3 │ text3 │
└──────┴───────┘

Veja também

Navigation