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
database.lineitem
where
l_shipdate <= cast('1998-12-01' as date) - cast('5' as interval day)
group by
l_returnflag, l_linestatus
order by
l_returnflag, l_linestatus;
--用cast实现truncate的功能
select sum(cast(cast( (cast(cast(((123.4567/2)* 100) as integer) as numeric (9,2)) /100) *2*100 as integer) as numeric(13, 2))/100) from database1.nation group by n_nationkey;

本文提供了两个SQL查询案例,第一个案例展示了如何使用SQL从lineitem表中筛选数据并进行聚合操作;第二个案例则演示了如何利用cast函数实现数值截断。
1万+

被折叠的 条评论
为什么被折叠?



