ClickHouse / ClickHouse/clickhouse-java

How to use ClientV2 and ExternalTable

Open
#2,397 2 comments 0 reactions 1 assignee Claimed by @chernser View on GitHub
client-api-v2 question v2-feedback
Dominant language
Java
Stars
1.6k
Forks
636
Avg merge
2d 16h
Merged PRs (30d)
28

Description

I need an example how to use ClientV2 and ExternalTable

For example I have a simple query `select * from numbers(10) where number in ExternalTable;`

```java
final Client client = new Client.Builder().setUsername("default").setPassword("").addEndpoint("http://localhost:8123/")
.build();

final String sql = "select * from numbers(10) where number in ExternalTable";
QueryResponse response = client.query(sql).get(3, TimeUnit.SECONDS);
ClickHouseBinaryFormatReader reader = client.newBinaryFormatReader(response);
while (reader.hasNext()) {
reader.next();
System.out.println(reader.getLong("number"));
}
```

And I need to pass `1\n\2\n3` as `ExternalTable`.

Like here https://github.com/ClickHouse/clickhouse-java/blob/bed84eecaf34fd959ef10df35ec73912991d5047/clickhouse-client/src/test/java/com/clickhouse/client/ClientIntegrationTest.java#L570

Or here https://github.com/ClickHouse/clickhouse-java/issues/891

https://clickhouse.com/docs/engines/table-engines/special/external-data

I need it because I want to pass a list with 200k values and a query size (SQL length) without using the external data is bigger than 1Mb.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.