我想将所有节点及其值的名称插入到xml中.我遇到的问题是第一个子节点之一没有分配任何值,但它确实有子节点有值.如果我只使用通配符,那么它只选择该级别上的所有子节点,包括没有赋值的子节点.有没有办法使用通配符只选择自己没有子节点的子节点?
我正在Redshift上进行简单的测试,以尝试加快将数据插入Redshift表的速度。我今天注意到的一件事是做这样的事情
CREATE TABLE a (x int) DISTSTYLE key DISTKEY (x) SORTKEY (x);
INSERT INTO a (x) VALUES (1), (2), (3), (4);
VACUUM a; ANALYZE a;
EXPLAIN SELECT MAX(x) FROM a;
Run Code Online (Sandbox Code Playgroud)
产量
QUERY PLAN
XN Aggregate (cost=0.05..0.05 rows=1 width=4)
-> XN Seq Scan on a (cost=0.00..0.04 rows=4 width=4)
Run Code Online (Sandbox Code Playgroud)
我知道这只是4行,但仍然不应该进行全表扫描以查找预排序列的最大值。是不是元数据包含在工作中ANALYZE?
就像进行健全性检查一样,EXPLAINfor SELECT x FROM a WHERE x > 3只扫描2行而不是整个表。
编辑:我向表中插入了1,000,000多行,其随机值从1到10,000。做一个真空和分析。查询计划仍然说它必须扫描所有1,000,004行。