为啥字段类型不一样,clickhouse查询结果不一样

Posted

技术标签:

【中文标题】为啥字段类型不一样,clickhouse查询结果不一样【英文标题】:Why are the field types different and the clickhouse query results are different为什么字段类型不一样,clickhouse查询结果不一样 【发布时间】:2021-09-09 09:19:59 【问题描述】:

我有两条 sql 语句。

    SELECT
    sku_id,
    inventory_state,
    count() AS sumNum,
    sum(in_price) AS sumInPrice,
    sum(out_price) AS sumOutPrice
FROM
    imspc_inventory_lifecycle_bills_2021
WHERE
    sku_id IN (1422796349332701186, 1415500436516028417)
    AND inventory_state IN ('1', '5', '6')
    AND purchase_depart_id = 8
GROUP BY
    sku_id,
    inventory_state

    SELECT
    sku_id,
    inventory_state,
    count() AS sumNum,
    sum(in_price) AS sumInPrice,
    sum(out_price) AS sumOutPrice
FROM
    imspc_inventory_lifecycle_bills_2021
WHERE
    sku_id IN (1422796349332701186, 1415500436516028417)
    AND inventory_state IN ('1', '5', '6')
    AND purchase_depart_id = '8'
GROUP BY
    sku_id,
    inventory_state

purchase_depart_id 字段类型为 int64。 第一个 SQL 结果是enter image description here

第二个 SQL 结果是正确的。 是什么导致了这个问题?

【问题讨论】:

【参考方案1】:

物化mysql ?这是一个错误。 https://github.com/ClickHouse/ClickHouse/issues/25794

【讨论】:

以上是关于为啥字段类型不一样,clickhouse查询结果不一样的主要内容,如果未能解决你的问题,请参考以下文章

mysql中order by分别 按两张表相同的属性排序为啥结果不一样

sqlserver数据库中的字段是bit类型的,数据库中查询查询出来的值为啥是true,o查询不出来

为啥在两个类型转换字段上连接的 Access 查询中会出现“#Error”的结果?

clickhouse,数据查询与写入优化,分布式子查询优化,外部聚合/排序优化,基于JOIN引擎的优化,SQL优化案例,物化视图提速,查询优化常用经验法则,选择和主键不一样的排序键,数据入库优化(代码

float,double类型小数计算结果为啥不一样

在oracle数据库表中没有添加rowid字段为啥会出现