【详述】明细表通过SQL插入一条数据,但是select * 的时候显示不出来,但是select count(*)又有数据。
经过测试,发现两个情况:
(1)插入一条数据,除分区键以外其他列为空,数据可以显示
(2)select列时,不带分区键的列,数据可以显示,带上分区列(例如select *)就无法显示
【背景】做过哪些操作?
建表语句:
CREATE TABLE test5(
collect_date DATE NOT NULL,
collect_time BIGINT,
network_id BIGINT NULL, --空和非空都试过
mac varchar(12),
active2 int
)
PARTITION BY date_trunc('day', collect_date)
DISTRIBUTED BY HASH(network_id)
ORDER BY(collect_time)
插入语句:
INSERT INTO test5 (collect_date, collect_time, network_id, mac, active2) VALUES ('2024-09-19', 123123, 456456, 'yiyui', null);
查询语句:
select * from test5;
-- Empty set (0.02 sec)
select count(*) from test5;
+----------+
| count(*) |
+----------+
| 1 |
+----------+
1 row in set (0.04 sec)
select collect_time,network_id from test5;
+--------------+------------+
| collect_time | network_id |
+--------------+------------+
| 123123 | 456456 |
+--------------+------------+
1 row in set (0.02 sec)
【业务影响】从这张表同步数据到另一张表,搜不到数据,导致同步失败
【是否存算分离】存算分离和存算一体都试过
【StarRocks版本】例如:3.3.1
【集群规模】本机
【表模型】明细表
【导入或者导出方式】insert SQL语句