ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

HANA TPCH导入和测试

2022-07-26 09:01:43  阅读:115  来源: 互联网

标签:name suppkey HANA msec 导入 time TPCH NULL select


首次测试先采用此方法,一方面熟悉hana SQL语法,另一方面先把TPCH功能跑通,为下一次做准备。

补充说明:
dummy = dual
支持current_date,不支持sysdate

建表 dss.ddl
(由于是分析性能力测试,建表采用列存表,在TPCH的建表语句上加以修改,加上COLUMN关键字)

hdbsql HXE=> CREATE COLUMN TABLE NATION ( N_NATIONKEY INTEGER NOT NULL,N_NAME CHAR(25) NOT NULL,N_REGIONKEY INTEGER NOT NULL,N_COMMENT VARCHAR(152));
0 rows affected (overall time 8699 usec; server time 4817 usec)

hdbsql HXE=> CREATE COLUMN TABLE REGION ( R_REGIONKEY INTEGER NOT NULL,R_NAME CHAR(25) NOT NULL,R_COMMENT VARCHAR(152));
0 rows affected (overall time 9775 usec; server time 5806 usec)

hdbsql HXE=> CREATE COLUMN TABLE PART ( P_PARTKEY INTEGER NOT NULL,P_NAME VARCHAR(55) NOT NULL,P_MFGR CHAR(25) NOT NULL,P_BRAND CHAR(10) NOT NULL,P_TYPE VARCHAR(25) NOT NULL,P_SIZE INTEGER NOT NULL,P_CONTAINER CHAR(10) NOT NULL,P_RETAILPRICE DECIMAL(15,2) NOT NULL,P_COMMENT VARCHAR(23) NOT NULL );
0 rows affected (overall time 14.558 msec; server time 9483 usec)

hdbsql HXE=> CREATE COLUMN TABLE SUPPLIER ( S_SUPPKEY INTEGER NOT NULL,S_NAME CHAR(25) NOT NULL,S_ADDRESS VARCHAR(40) NOT NULL,S_NATIONKEY INTEGER NOT NULL,S_PHONE CHAR(15) NOT NULL,S_ACCTBAL DECIMAL(15,2) NOT NULL,S_COMMENT VARCHAR(101) NOT NULL);
0 rows affected (overall time 9628 usec; server time 5264 usec)

hdbsql HXE=> CREATE COLUMN TABLE PARTSUPP ( PS_PARTKEY INTEGER NOT NULL,PS_SUPPKEY INTEGER NOT NULL,PS_AVAILQTY INTEGER NOT NULL,PS_SUPPLYCOST DECIMAL(15,2) NOT NULL,PS_COMMENT VARCHAR(199) NOT NULL );
0 rows affected (overall time 10.094 msec; server time 7182 usec)

hdbsql HXE=> CREATE COLUMN TABLE CUSTOMER ( C_CUSTKEY INTEGER NOT NULL,C_NAME VARCHAR(25) NOT NULL,C_ADDRESS VARCHAR(40) NOT NULL,C_NATIONKEY INTEGER NOT NULL,C_PHONE CHAR(15) NOT NULL,C_ACCTBAL DECIMAL(15,2) NOT NULL,C_MKTSEGMENT CHAR(10) NOT NULL,C_COMMENT VARCHAR(117) NOT NULL);
0 rows affected (overall time 7789 usec; server time 5056 usec)

hdbsql HXE=> CREATE COLUMN TABLE ORDERS ( O_ORDERKEY INTEGER NOT NULL,O_CUSTKEY INTEGER NOT NULL,O_ORDERSTATUS CHAR(1) NOT NULL,O_TOTALPRICE DECIMAL(15,2) NOT NULL,O_ORDERDATE DATE NOT NULL,O_ORDERPRIORITY CHAR(15) NOT NULL, O_CLERK CHAR(15) NOT NULL, O_SHIPPRIORITY INTEGER NOT NULL,O_COMMENT VARCHAR(79) NOT NULL);
0 rows affected (overall time 9285 usec; server time 5156 usec)

hdbsql HXE=> CREATE COLUMN TABLE LINEITEM ( L_ORDERKEY INTEGER NOT NULL,L_PARTKEY INTEGER NOT NULL,L_SUPPKEY INTEGER NOT NULL,L_LINENUMBER INTEGER NOT NULL,L_QUANTITY DECIMAL(15,2) NOT NULL,L_EXTENDEDPRICE DECIMAL(15,2) NOT NULL,L_DISCOUNT DECIMAL(15,2) NOT NULL,L_TAX DECIMAL(15,2) NOT NULL,L_RETURNFLAG CHAR(1) NOT NULL,L_LINESTATUS CHAR(1) NOT NULL,L_SHIPDATE DATE NOT NULL,L_COMMITDATE DATE NOT NULL,L_RECEIPTDATE DATE NOT NULL,L_SHIPINSTRUCT CHAR(25) NOT NULL,L_SHIPMODE CHAR(10) NOT NULL,L_COMMENT VARCHAR(44) NOT NULL);
0 rows affected (overall time 15.643 msec; server time 10.796 msec)


建主外键 dss.ri
(修改dss.ri,hana SQL语法中foreign key 后面直接接column)

hdbsql HXE=> ALTER TABLE REGION ADD PRIMARY KEY (R_REGIONKEY);
0 rows affected (overall time 19.003 msec; server time 14.723 msec)

hdbsql HXE=> ALTER TABLE NATION ADD PRIMARY KEY (N_NATIONKEY);
0 rows affected (overall time 19.932 msec; server time 17.186 msec)

hdbsql HXE=> ALTER TABLE NATION ADD FOREIGN KEY (N_REGIONKEY) references REGION;
0 rows affected (overall time 43.079 msec; server time 40.237 msec)

hdbsql HXE=> ALTER TABLE PART ADD PRIMARY KEY (P_PARTKEY);
0 rows affected (overall time 22.142 msec; server time 19.043 msec)

hdbsql HXE=> ALTER TABLE SUPPLIER ADD PRIMARY KEY (S_SUPPKEY);
0 rows affected (overall time 20.109 msec; server time 15.977 msec)

hdbsql HXE=> ALTER TABLE SUPPLIER ADD FOREIGN KEY (S_NATIONKEY) references NATION;
0 rows affected (overall time 39.971 msec; server time 35.834 msec)

hdbsql HXE=> ALTER TABLE PARTSUPP ADD PRIMARY KEY (PS_PARTKEY,PS_SUPPKEY);
0 rows affected (overall time 19.947 msec; server time 14.871 msec)

hdbsql HXE=> ALTER TABLE CUSTOMER ADD PRIMARY KEY (C_CUSTKEY);
0 rows affected (overall time 15.142 msec; server time 11.905 msec)

hdbsql HXE=> ALTER TABLE CUSTOMER ADD FOREIGN KEY (C_NATIONKEY) references NATION;
0 rows affected (overall time 40.383 msec; server time 36.351 msec)

hdbsql HXE=> ALTER TABLE LINEITEM ADD PRIMARY KEY (L_ORDERKEY,L_LINENUMBER);
0 rows affected (overall time 21.744 msec; server time 18.689 msec)

hdbsql HXE=> ALTER TABLE ORDERS ADD PRIMARY KEY (O_ORDERKEY);
0 rows affected (overall time 17.907 msec; server time 14.906 msec)

hdbsql HXE=> ALTER TABLE PARTSUPP ADD FOREIGN KEY (PS_SUPPKEY) references SUPPLIER;
0 rows affected (overall time 42.365 msec; server time 38.365 msec)

hdbsql HXE=> ALTER TABLE PARTSUPP ADD FOREIGN KEY (PS_PARTKEY) references PART;
0 rows affected (overall time 41.635 msec; server time 37.584 msec)

hdbsql HXE=> ALTER TABLE ORDERS ADD FOREIGN KEY (O_CUSTKEY) references CUSTOMER;
0 rows affected (overall time 49.805 msec; server time 45.456 msec)

hdbsql HXE=> ALTER TABLE LINEITEM ADD FOREIGN KEY (L_ORDERKEY) references ORDERS;
0 rows affected (overall time 54.454 msec; server time 51.751 msec)

hdbsql HXE=> ALTER TABLE LINEITEM ADD FOREIGN KEY (L_PARTKEY,L_SUPPKEY) references PARTSUPP;
0 rows affected (overall time 51.450 msec; server time 47.448 msec)


修改源数据,去掉最后面的 “ | ”
(创建data目录,本次测试目录为/hana/2.18.0_rc2/dbgen/data)

for i in `ls *.tbl`
do
name="data/$i"
echo $name
`touch $name`
`chmod 777 $name`
sed 's/|$//' $i >> $name;
done

 

导入数据

先调整参数

hdbsql HXE=> ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'system') set ('import_export', 'enable_csv_import_path_filter') = 'false' with reconfigure;
0 rows affected (overall time 131.435 msec; server time 129.184 msec)

hdbsql HXE=> ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'system') set ('import_export', 'csv_import_path_filter') = '/hana/2.18.0_rc2/dbgen/data' with reconfigure ;
0 rows affected (overall time 92.766 msec; server time 90.351 msec)

再插入数据

hdbsql HXE=> import from csv file '/hana/2.18.0_rc2/dbgen/data/region.tbl' into region with record DELIMITED BY '\n' FIELD DELIMITED BY '|';
0 rows affected (overall time 14.065 msec; server time 10.697 msec)

hdbsql HXE=> import from csv file '/hana/2.18.0_rc2/dbgen/data/nation.tbl' into nation with record DELIMITED BY '\n' FIELD DELIMITED BY '|';
0 rows affected (overall time 14.074 msec; server time 10.888 msec)

hdbsql HXE=> import from csv file '/hana/2.18.0_rc2/dbgen/data/part.tbl' into part with record DELIMITED BY '\n' FIELD DELIMITED BY '|';
0 rows affected (overall time 2850.458 msec; server time 2833.533 msec)

hdbsql HXE=> import from csv file '/hana/2.18.0_rc2/dbgen/data/supplier.tbl' into supplier with record DELIMITED BY '\n' FIELD DELIMITED BY '|' threads 10;
0 rows affected (overall time 55.316 msec; server time 50.356 msec)

hdbsql HXE=> import from csv file '/hana/2.18.0_rc2/dbgen/data/partsupp.tbl' into partsupp with record DELIMITED BY '\n' FIELD DELIMITED BY '|' threads 10;
0 rows affected (overall time 4525.503 msec; server time 4512.291 msec)

hdbsql HXE=> import from csv file '/hana/2.18.0_rc2/dbgen/data/customer.tbl' into customer with record DELIMITED BY '\n' FIELD DELIMITED BY '|' threads 10;
0 rows affected (overall time 651.474 msec; server time 631.496 msec)

hdbsql HXE=> import from csv file '/hana/2.18.0_rc2/dbgen/data/lineitem.tbl' into lineitem with record DELIMITED BY '\n' FIELD DELIMITED BY '|' threads 10;
0 rows affected (overall time 45.067485 sec; server time 45.056873 sec)

hdbsql HXE=> import from csv file '/hana/2.18.0_rc2/dbgen/data/orders.tbl' into orders with record DELIMITED BY '\n' FIELD DELIMITED BY '|' threads 10;
0 rows affected (overall time 13.456027 sec; server time 13.443088 sec)

生成query

mkdir query

for q in `seq 1 22`
do
DSS_QUERY=queries ./qgen -s 10 $q > query/$q.sql
sed 's/^select/explain select/' query/$q.sql > query/$q.explain.sql
done

修改22条SQL,符合HANA支持的语法

22条SQL

--第1条

select
l_returnflag,
l_linestatus,
sum(l_quantity) as sum_qty,
sum(l_extendedprice) as sum_base_price,
sum(l_extendedprice * (1 - l_discount)) as sum_disc_price,
sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) as sum_charge,
avg(l_quantity) as avg_qty,
avg(l_extendedprice) as avg_price,
avg(l_discount) as avg_disc,
count(*) as count_order
from
lineitem
where
l_shipdate <= date '1998-09-01'
group by
l_returnflag,
l_linestatus
order by
l_returnflag,
l_linestatus;


--第2条

select
s_acctbal,
s_name,
n_name,
p_partkey,
p_mfgr,
s_address,
s_phone,
s_comment
from
part,
supplier,
partsupp,
nation,
region
where
p_partkey = ps_partkey
and s_suppkey = ps_suppkey
and p_size = 15
and p_type like '%COPPER'
and s_nationkey = n_nationkey
and n_regionkey = r_regionkey
and r_name = 'AFRICA'
and ps_supplycost = (
select
min(ps_supplycost)
from
partsupp,
supplier,
nation,
region
where
p_partkey = ps_partkey
and s_suppkey = ps_suppkey
and s_nationkey = n_nationkey
and n_regionkey = r_regionkey
and r_name = 'AFRICA'
)
order by
s_acctbal desc,
n_name,
s_name,
p_partkey
limit 100;


--第3条

select
l_orderkey,
sum(l_extendedprice * (1 - l_discount)) as revenue,
o_orderdate,
o_shippriority
from
customer,
orders,
lineitem
where
c_mktsegment = 'BUILDING'
and c_custkey = o_custkey
and l_orderkey = o_orderkey
and o_orderdate < date '1995-03-6'
and l_shipdate > date '1995-03-6'
group by
l_orderkey,
o_orderdate,
o_shippriority
order by
revenue desc,
o_orderdate
limit 10;


--第4条

select
o_orderpriority,
count(*) as order_count
from
orders
where
o_orderdate >= date '1993-12-01'
and o_orderdate < date '1994-03-01'
and exists (
select
*
from
lineitem
where
l_orderkey = o_orderkey
and l_commitdate < l_receiptdate
)
group by
o_orderpriority
order by
o_orderpriority;


--第5条

select
n_name,
sum(l_extendedprice * (1 - l_discount)) as revenue
from
customer,
orders,
lineitem,
supplier,
nation,
region
where
c_custkey = o_custkey
and l_orderkey = o_orderkey
and l_suppkey = s_suppkey
and c_nationkey = s_nationkey
and s_nationkey = n_nationkey
and n_regionkey = r_regionkey
and r_name = 'ASIA'
and o_orderdate >= date '1996-01-01'
and o_orderdate < date '1997-01-01'
group by
n_name
order by
revenue desc;


--第6条

select
sum(l_extendedprice * l_discount) as revenue
from
lineitem
where
l_shipdate >= date '1996-01-01'
and l_shipdate < date '1997-01-01'
and l_discount between 0.07 - 0.01 and 0.07 + 0.01
and l_quantity < 24;


--第7条

select
supp_nation,
cust_nation,
l_year,
sum(volume) as revenue
from
(
select
n1.n_name as supp_nation,
n2.n_name as cust_nation,
extract(year from l_shipdate) as l_year,
l_extendedprice * (1 - l_discount) as volume
from
supplier,
lineitem,
orders,
customer,
nation n1,
nation n2
where
s_suppkey = l_suppkey
and o_orderkey = l_orderkey
and c_custkey = o_custkey
and s_nationkey = n1.n_nationkey
and c_nationkey = n2.n_nationkey
and (
(n1.n_name = 'PERU' and n2.n_name = 'BRAZIL')
or (n1.n_name = 'BRAZIL' and n2.n_name = 'PERU')
)
and l_shipdate between date '1995-01-01' and date '1996-12-31'
) as shipping
group by
supp_nation,
cust_nation,
l_year
order by
supp_nation,
cust_nation,
l_year;


--第8条

select
o_year,
sum(case
when nation = 'BRAZIL' then volume
else 0
end) / sum(volume) as mkt_share
from
(
select
extract(year from o_orderdate) as o_year,
l_extendedprice * (1 - l_discount) as volume,
n2.n_name as nation
from
part,
supplier,
lineitem,
orders,
customer,
nation n1,
nation n2,
region
where
p_partkey = l_partkey
and s_suppkey = l_suppkey
and l_orderkey = o_orderkey
and o_custkey = c_custkey
and c_nationkey = n1.n_nationkey
and n1.n_regionkey = r_regionkey
and r_name = 'AMERICA'
and s_nationkey = n2.n_nationkey
and o_orderdate between date '1995-01-01' and date '1996-12-31'
and p_type = 'PROMO BURNISHED NICKEL'
) as all_nations
group by
o_year
order by
o_year;


--第9条

select
nation,
o_year,
sum(amount) as sum_profit
from
(
select
n_name as nation,
extract(year from o_orderdate) as o_year,
l_extendedprice * (1 - l_discount) - ps_supplycost * l_quantity as amount
from
part,
supplier,
lineitem,
partsupp,
orders,
nation
where
s_suppkey = l_suppkey
and ps_suppkey = l_suppkey
and ps_partkey = l_partkey
and p_partkey = l_partkey
and o_orderkey = l_orderkey
and s_nationkey = n_nationkey
and p_name like '%smoke%'
) as profit
group by
nation,
o_year
order by
nation,
o_year desc;


--第10条

select
c_custkey,
c_name,
sum(l_extendedprice * (1 - l_discount)) as revenue,
c_acctbal,
n_name,
c_address,
c_phone,
c_comment
from
customer,
orders,
lineitem,
nation
where
c_custkey = o_custkey
and l_orderkey = o_orderkey
and o_orderdate >= date '1993-07-01'
and o_orderdate < date '1993-10-01'
and l_returnflag = 'R'
and c_nationkey = n_nationkey
group by
c_custkey,
c_name,
c_acctbal,
c_phone,
n_name,
c_address,
c_comment
order by
revenue desc
limit 20;

--第11条 查出来为空

select
ps_partkey,
sum(ps_supplycost * ps_availqty) as value
from
partsupp,
supplier,
nation
where
ps_suppkey = s_suppkey
and s_nationkey = n_nationkey
and n_name = 'PERU'
group by
ps_partkey having
sum(ps_supplycost * ps_availqty) > (
select
sum(ps_supplycost * ps_availqty) * 0.00001
from
partsupp,
supplier,
nation
where

ps_suppkey = s_suppkey
and s_nationkey = n_nationkey
and n_name = 'PERU'
)
order by
value desc;

ALGERIA,ARGENTINA,BRAZIL,CANADA,EGYPT,ETHIOPIA,FRANCE,GERMANY,INDIA,INDONESIA,IRAN,IRAQ,JAPAN,JORDAN,KENYA,MOROCCO,MOZAMBIQUE,PERU,CHINA,ROMANIA,SAUDI ARABIA,VIETNAM,RUSSIA,UNITED KINGDOM,UNITED STATES


--第12条

select
l_shipmode,
sum(case
when o_orderpriority = '1-URGENT'
or o_orderpriority = '2-HIGH'
then 1
else 0
end) as high_line_count,
sum(case
when o_orderpriority <> '1-URGENT'
and o_orderpriority <> '2-HIGH'
then 1
else 0
end) as low_line_count
from
orders,
lineitem
where
o_orderkey = l_orderkey
and l_shipmode in ('TRUCK', 'MAIL')
and l_commitdate < l_receiptdate
and l_shipdate < l_commitdate
and l_receiptdate >= date '1996-01-01'
and l_receiptdate < date '1997-01-01'
group by
l_shipmode
order by
l_shipmode;

--第13条

select
c_count,
count(*) as custdist
from
(
select
c_custkey,
count(o_orderkey) as c_count
from
customer left outer join orders on
c_custkey = o_custkey
and o_comment not like '%unusual%accounts%'
group by
c_custkey
) as c_orders
group by
c_count
order by
custdist desc,
c_count desc;

--第14条

select
100.00 * sum(case
when p_type like 'PROMO%'
then l_extendedprice * (1 - l_discount)
else 0
end) / sum(l_extendedprice * (1 - l_discount)) as promo_revenue
from
lineitem,
part
where
l_partkey = p_partkey
and l_shipdate >= date '1996-05-01'
and l_shipdate < date '1996-06-01';

--第15条
create view revenue0 (supplier_no, total_revenue) as
select
l_suppkey,
sum(l_extendedprice * (1 - l_discount))
from
lineitem
where
l_shipdate >= date '1996-07-01'
and l_shipdate < date '1996-10-01'
group by
l_suppkey;

select
s_suppkey,
s_name,
s_address,
s_phone,
total_revenue
from
supplier,
revenue0
where
s_suppkey = supplier_no
and total_revenue = (
select
max(total_revenue)
from
revenue0
)
order by
s_suppkey;

drop view revenue0;


--第16条

select
p_brand,
p_type,
p_size,
count(distinct ps_suppkey) as supplier_cnt
from
partsupp,
part
where
p_partkey = ps_partkey
and p_brand <> 'Brand#33'
and p_type not like 'STANDARD PLATED%'
and p_size in (11, 41, 13, 21, 37, 29, 49, 38)
and ps_suppkey not in (
select
s_suppkey
from
supplier
where
s_comment like '%Customer%Complaints%'
)
group by
p_brand,
p_type,
p_size
order by
supplier_cnt desc,
p_brand,
p_type,
p_size;


--第17条
select
sum(l_extendedprice) / 7.0 as avg_yearly
from
lineitem,
part
where
p_partkey = l_partkey
and p_brand = 'Brand#31'
and p_container = 'LG CASE'
and l_quantity < (
select
0.2 * avg(l_quantity)
from
lineitem
where
l_partkey = p_partkey
);


--第18条
select
c_name,
c_custkey,
o_orderkey,
o_orderdate,
o_totalprice,
sum(l_quantity)
from
customer,
orders,
lineitem
where
o_orderkey in (
select
l_orderkey
from
lineitem
group by
l_orderkey having
sum(l_quantity) > 312
)
and c_custkey = o_custkey
and o_orderkey = l_orderkey
group by
c_name,
c_custkey,
o_orderkey,
o_orderdate,
o_totalprice
order by
o_totalprice desc,
o_orderdate
limit 100;


--第19条

select
sum(l_extendedprice* (1 - l_discount)) as revenue
from
lineitem,
part
where
(
p_partkey = l_partkey
and p_brand = 'Brand#24'
and p_container in ('SM CASE', 'SM BOX', 'SM PACK', 'SM PKG')
and l_quantity >= 10 and l_quantity <= 10 + 10
and p_size between 1 and 5
and l_shipmode in ('AIR', 'AIR REG')
and l_shipinstruct = 'DELIVER IN PERSON'
)
or
(
p_partkey = l_partkey
and p_brand = 'Brand#22'
and p_container in ('MED BAG', 'MED BOX', 'MED PKG', 'MED PACK')
and l_quantity >= 17 and l_quantity <= 17 + 10
and p_size between 1 and 10
and l_shipmode in ('AIR', 'AIR REG')
and l_shipinstruct = 'DELIVER IN PERSON'
)
or
(
p_partkey = l_partkey
and p_brand = 'Brand#43'
and p_container in ('LG CASE', 'LG BOX', 'LG PACK', 'LG PKG')
and l_quantity >= 27 and l_quantity <= 27 + 10
and p_size between 1 and 15
and l_shipmode in ('AIR', 'AIR REG')
and l_shipinstruct = 'DELIVER IN PERSON'
);


--第20条
select
s_name,
s_address
from
supplier,
nation
where
s_suppkey in (
select
ps_suppkey
from
partsupp
where
ps_partkey in (
select
p_partkey
from
part
where
p_name like 'saddle%'
)
and ps_availqty > (
select
0.5 * sum(l_quantity)
from
lineitem
where
l_partkey = ps_partkey
and l_suppkey = ps_suppkey
and l_shipdate >= date '1994-01-01'
and l_shipdate < date '1995-01-01'
)
)
and s_nationkey = n_nationkey
and n_name = 'INDONESIA'
order by
s_name;

--第21条

select
s_name,
count(*) as numwait
from
supplier,
lineitem l1,
orders,
nation
where
s_suppkey = l1.l_suppkey
and o_orderkey = l1.l_orderkey
and o_orderstatus = 'F'
and l1.l_receiptdate > l1.l_commitdate
and exists (
select
*
from
lineitem l2
where
l2.l_orderkey = l1.l_orderkey
and l2.l_suppkey <> l1.l_suppkey
)
and not exists (
select
*
from
lineitem l3
where
l3.l_orderkey = l1.l_orderkey
and l3.l_suppkey <> l1.l_suppkey
and l3.l_receiptdate > l3.l_commitdate
)
and s_nationkey = n_nationkey
and n_name = 'ETHIOPIA'
group by
s_name
order by
numwait desc,
s_name
limit 100;

--第22条

select
cntrycode,
count(*) as numcust,
sum(c_acctbal) as totacctbal
from
(
select
substring(c_phone,1,2) as cntrycode,
c_acctbal
from
customer
where
substring(c_phone, 1 , 2) in
('19', '28', '23', '34', '11', '14', '32')
and c_acctbal > (
select
avg(c_acctbal)
from
customer
where
c_acctbal > 0.00
and substring(c_phone,1,2) in
('19', '28', '23', '34', '11', '14', '32')
)
and not exists (
select
*
from
orders
where
o_custkey = c_custkey
)
) as custsale
group by
cntrycode
order by
cntrycode;

 

标签:name,suppkey,HANA,msec,导入,time,TPCH,NULL,select
来源: https://www.cnblogs.com/hone201911/p/16519533.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有