snapshot of https://github.com/sqlc-dev/sqlc.git (main, 2026-09-16; blobs > 131072B omitted)
Some checks failed
kotlin / test (push) Has been skipped
python / test (push) Has been skipped
typescript / test (push) Has been skipped
go / build darwin/amd64 (push) Has been cancelled
go / build linux/amd64 (push) Has been cancelled
go / build windows/amd64 (push) Has been cancelled
go / build darwin/arm64 (push) Has been cancelled
go / build linux/arm64 (push) Has been cancelled
go / build windows/arm64 (push) Has been cancelled
go / test (push) Has been cancelled
go / vuln_check (push) Has been cancelled
Some checks failed
kotlin / test (push) Has been skipped
python / test (push) Has been skipped
typescript / test (push) Has been skipped
go / build darwin/amd64 (push) Has been cancelled
go / build linux/amd64 (push) Has been cancelled
go / build windows/amd64 (push) Has been cancelled
go / build darwin/arm64 (push) Has been cancelled
go / build linux/arm64 (push) Has been cancelled
go / build windows/arm64 (push) Has been cancelled
go / test (push) Has been cancelled
go / vuln_check (push) Has been cancelled
This commit is contained in:
5
internal/endtoend/testdata/analyze_subqueries/clickhouse/exec.json
vendored
Normal file
5
internal/endtoend/testdata/analyze_subqueries/clickhouse/exec.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"command": "analyze",
|
||||
"args": ["--dialect", "clickhouse", "--schema", "schema.sql", "query.sql"],
|
||||
"contexts": ["base"]
|
||||
}
|
||||
2
internal/endtoend/testdata/analyze_subqueries/clickhouse/fixture.sql
vendored
Normal file
2
internal/endtoend/testdata/analyze_subqueries/clickhouse/fixture.sql
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
INSERT INTO events VALUES (1, 'signup', NULL, 9.5), (2, 'login', 'web', 0.5);
|
||||
INSERT INTO users VALUES (1, 'a@example.com');
|
||||
27
internal/endtoend/testdata/analyze_subqueries/clickhouse/query.sql
vendored
Normal file
27
internal/endtoend/testdata/analyze_subqueries/clickhouse/query.sql
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
-- name: Aliased :many
|
||||
SELECT s.x, s.total, s.email
|
||||
FROM (
|
||||
SELECT e.id AS x, sum(e.amount) AS total, any(u.email) AS email
|
||||
FROM events e JOIN users u ON u.id = e.id
|
||||
GROUP BY e.id
|
||||
) s;
|
||||
|
||||
-- name: Union :many
|
||||
SELECT id, name FROM events
|
||||
UNION ALL
|
||||
SELECT id, email FROM users;
|
||||
|
||||
-- name: ScalarSubquery :many
|
||||
SELECT id, (SELECT count() FROM users) AS user_count
|
||||
FROM events
|
||||
WHERE id IN (SELECT id FROM users WHERE email = ?);
|
||||
|
||||
|
||||
-- name: Cte :many
|
||||
WITH t AS (SELECT id, tag FROM events)
|
||||
SELECT t.id, t.tag, s.cnt
|
||||
FROM t
|
||||
JOIN (SELECT id, count() AS cnt FROM events GROUP BY id) s ON s.id = t.id;
|
||||
|
||||
-- name: Star :many
|
||||
SELECT * FROM users u JOIN events e ON e.id = u.id;
|
||||
11
internal/endtoend/testdata/analyze_subqueries/clickhouse/schema.sql
vendored
Normal file
11
internal/endtoend/testdata/analyze_subqueries/clickhouse/schema.sql
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
CREATE TABLE events (
|
||||
id UInt64,
|
||||
name String,
|
||||
tag Nullable(String),
|
||||
amount Float64
|
||||
) ENGINE = MergeTree ORDER BY id;
|
||||
|
||||
CREATE TABLE users (
|
||||
id UInt64,
|
||||
email String
|
||||
) ENGINE = MergeTree ORDER BY id;
|
||||
159
internal/endtoend/testdata/analyze_subqueries/clickhouse/stdout.json
vendored
Normal file
159
internal/endtoend/testdata/analyze_subqueries/clickhouse/stdout.json
vendored
Normal file
@@ -0,0 +1,159 @@
|
||||
[
|
||||
{
|
||||
"name": "Aliased",
|
||||
"cmd": ":many",
|
||||
"columns": [
|
||||
{
|
||||
"name": "x",
|
||||
"type": {
|
||||
"name": "uint64"
|
||||
},
|
||||
"table": "events"
|
||||
},
|
||||
{
|
||||
"name": "total",
|
||||
"type": {
|
||||
"name": "float64"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "email",
|
||||
"type": {
|
||||
"name": "string"
|
||||
}
|
||||
}
|
||||
],
|
||||
"params": []
|
||||
},
|
||||
{
|
||||
"name": "Union",
|
||||
"cmd": ":many",
|
||||
"columns": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": {
|
||||
"name": "uint64"
|
||||
},
|
||||
"table": "events"
|
||||
},
|
||||
{
|
||||
"name": "name",
|
||||
"type": {
|
||||
"name": "string"
|
||||
},
|
||||
"table": "events"
|
||||
}
|
||||
],
|
||||
"params": []
|
||||
},
|
||||
{
|
||||
"name": "ScalarSubquery",
|
||||
"cmd": ":many",
|
||||
"columns": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": {
|
||||
"name": "uint64"
|
||||
},
|
||||
"table": "events"
|
||||
},
|
||||
{
|
||||
"name": "user_count",
|
||||
"type": {
|
||||
"name": "uint64",
|
||||
"nullable": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"params": [
|
||||
{
|
||||
"number": 1,
|
||||
"column": {
|
||||
"name": "email",
|
||||
"type": {
|
||||
"name": "string"
|
||||
},
|
||||
"table": "users"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Cte",
|
||||
"cmd": ":many",
|
||||
"columns": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": {
|
||||
"name": "uint64"
|
||||
},
|
||||
"table": "events"
|
||||
},
|
||||
{
|
||||
"name": "tag",
|
||||
"type": {
|
||||
"name": "string",
|
||||
"nullable": true
|
||||
},
|
||||
"table": "events"
|
||||
},
|
||||
{
|
||||
"name": "cnt",
|
||||
"type": {
|
||||
"name": "uint64"
|
||||
}
|
||||
}
|
||||
],
|
||||
"params": []
|
||||
},
|
||||
{
|
||||
"name": "Star",
|
||||
"cmd": ":many",
|
||||
"columns": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": {
|
||||
"name": "uint64"
|
||||
},
|
||||
"table": "users"
|
||||
},
|
||||
{
|
||||
"name": "email",
|
||||
"type": {
|
||||
"name": "string"
|
||||
},
|
||||
"table": "users"
|
||||
},
|
||||
{
|
||||
"name": "e.id",
|
||||
"type": {
|
||||
"name": "uint64"
|
||||
},
|
||||
"table": "events"
|
||||
},
|
||||
{
|
||||
"name": "name",
|
||||
"type": {
|
||||
"name": "string"
|
||||
},
|
||||
"table": "events"
|
||||
},
|
||||
{
|
||||
"name": "tag",
|
||||
"type": {
|
||||
"name": "string",
|
||||
"nullable": true
|
||||
},
|
||||
"table": "events"
|
||||
},
|
||||
{
|
||||
"name": "amount",
|
||||
"type": {
|
||||
"name": "float64"
|
||||
},
|
||||
"table": "events"
|
||||
}
|
||||
],
|
||||
"params": []
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user