.Net Core中有后端代码。需要编写集成测试。但是,此代码对 ClickHouse 字典执行查询。字典是从其他字典创建的,其他字典也是从字典创建的。目前,在输入测试数据之后、执行查询之前,我设置了一个等于所有字典 LIFETIME 总和的暂停。但我认为这不是最佳方法,因为...... 测试用例的执行时间大大增加。
有没有关于如何测试这一点的想法,以免使用等于所有字典 LIFETIME 总和的暂停?
.Net Core中有后端代码。需要编写集成测试。但是,此代码对 ClickHouse 字典执行查询。字典是从其他字典创建的,其他字典也是从字典创建的。目前,在输入测试数据之后、执行查询之前,我设置了一个等于所有字典 LIFETIME 总和的暂停。但我认为这不是最佳方法,因为...... 测试用例的执行时间大大增加。
有没有关于如何测试这一点的想法,以免使用等于所有字典 LIFETIME 总和的暂停?
有一个my_table
这样的表:
第 1 列 | 第 2 列 | 第 3 列 | 第 4 列 |
---|---|---|---|
一个 | b | C | d |
米 | X | C | d |
米 | X | 是的 | z |
需要从 中获取所有具有唯一值的行Column2
,即 应该得到这样的东西:
第 1 列 | 第 2 列 | 第 3 列 | 第 4 列 |
---|---|---|---|
一个 | b | C | d |
米 | X | C | d |
DISTINCT
但是,根据请求尝试处理:
SELECT DISTINCT ON (Column2) *
FROM my_db.my_table
我收到一个错误:
SQL Error [62]: ClickHouse exception, code: 62, host: localhost, port: 8123; Code: 62, e.displayText() = DB::Exception: Syntax error: failed at position 54 ('.') (line 2, col 18): .my_table. Expected one of: UNION, LIMIT, WHERE, WINDOW, end of query, HAVING, GROUP BY, INTO OUTFILE, OFFSET, PREWHERE, Comma, ORDER BY, SETTINGS, FROM, FORMAT, WITH, token (version 21.7.3.14 (official build))
例如,我使用了https://clickhouse.com/docs/ru/sql-reference/statements/select/distinct/
告诉我我做错了什么?错误消息没有太大帮助。