SAP HANA SQLScript
2012-11-10 13:22
501 查看
SAPHANASQLScript中的CEPlanOperators包括两种:DataSourceAcess和RelationalOperators。其中DataSourceAcess包括CE_COLUMN_TABLE、CE_JOIN_VIEW、CE_OLAP_VIEW、CE_CALC_VIEW;RelationalOperators包括CE_JOIN、CE_LEFT_OUTER_JOIN、CE_RIGHT_OUTER_JOIN、CE_PROJECTION、CE_CALC、CE_AGGREGATION、CE_UNION_ALL、CE_VERTICAL_UNION、CE_CONVERSEION。下面主要就几个重要的介绍。
CE_PROJECTION
语法:
[sql]viewplaincopyprint?
CE_PROJECTION(:var_table,[param_name[ASnew_param_name],...],[Filter])
例子::
[sql]viewplaincopyprint?
ot_books1=CE_PROJECTION(:it_books,["TITLE","PRICE","CRCY"AS"CURRENCY"],'"PRICE">50');
相当于:
[sql]viewplaincopyprint?
ot_books2=SELECTtitle,price,crcyAScurrencyFROM:it_booksWHEREprice>50;
[sql]viewplaincopyprint?
[sql]viewplaincopyprint?
解释:
用于限制变量表的列的输出,可以选择性的重命名,计算表达式或者包含过滤器。
CE_CALC
语法:
[sql]viewplaincopyprint?
CE_CALC('expr',[ResultType])
例子:
[sql]viewplaincopyprint?
with_tax=CE_PROJECTION(:product,["CID","CNAME","OID","SALES",
[sql]viewplaincopyprint?
<SPANstyle="WHITE-SPACE:pre"></SPAN>CE_CALC('"SALES"*:vat_rate',decimal(10,2))AS"SALES_VAT"],
<SPANstyle="WHITE-SPACE:pre"></SPAN>'"CNAME"='':cname''');
相当于:
[sql]viewplaincopyprint?
with_tax2=selectCID,CNAME,OID,SALES,(SALES*:vat_rate)asSALES_VATfrom:productwhereCNAME=':name';
解释:
主要用于其他运算中,请注意例子中的参数的表现形式。
CE_AGGREGATION
语法:
[sql]viewplaincopyprint?
CE_AGGREGATE(:var_table,[aggregate("column")[AS"renamed_col"]],["column",...])
例子:
[sql]viewplaincopyprint?
ot_books1=CE_AGGREGATION(:it_books,[COUNT("PUBLISHER")AS"CNT"],["YEAR"]);
相当于:
[sql]viewplaincopyprint?
ot_books2=SELECTCOUNT(publisher)AScnt,yearFROM:it_booksGROUPBYyear;
解释:
用于聚合运算。
CE_PROJECTION
语法:
[sql]
CE_PROJECTION(:var_table,[param_name[ASnew_param_name],...],[Filter])
CE_PROJECTION(:var_table,[param_name[ASnew_param_name],...],[Filter])
例子::
[sql]
ot_books1=CE_PROJECTION(:it_books,["TITLE","PRICE","CRCY"AS"CURRENCY"],'"PRICE">50');
ot_books1=CE_PROJECTION(:it_books,["TITLE","PRICE","CRCY"AS"CURRENCY"],'"PRICE">50');
相当于:
[sql]
ot_books2=SELECTtitle,price,crcyAScurrencyFROM:it_booksWHEREprice>50;
ot_books2=SELECTtitle,price,crcyAScurrencyFROM:it_booksWHEREprice>50;
[sql]
[sql]
解释:
用于限制变量表的列的输出,可以选择性的重命名,计算表达式或者包含过滤器。
CE_CALC
语法:
[sql]
CE_CALC('expr',[ResultType])
CE_CALC('expr',[ResultType])
例子:
[sql]
with_tax=CE_PROJECTION(:product,["CID","CNAME","OID","SALES",
with_tax=CE_PROJECTION(:product,["CID","CNAME","OID","SALES",
[sql]
<SPANstyle="WHITE-SPACE:pre"></SPAN>CE_CALC('"SALES"*:vat_rate',decimal(10,2))AS"SALES_VAT"],
<SPANstyle="WHITE-SPACE:pre"></SPAN>'"CNAME"='':cname''');
CE_CALC('"SALES"*:vat_rate',decimal(10,2))AS"SALES_VAT"],
'"CNAME"='':cname''');
相当于:
[sql]
with_tax2=selectCID,CNAME,OID,SALES,(SALES*:vat_rate)asSALES_VATfrom:productwhereCNAME=':name';
with_tax2=selectCID,CNAME,OID,SALES,(SALES*:vat_rate)asSALES_VATfrom:productwhereCNAME=':name';
解释:
主要用于其他运算中,请注意例子中的参数的表现形式。
CE_AGGREGATION
语法:
[sql]
CE_AGGREGATE(:var_table,[aggregate("column")[AS"renamed_col"]],["column",...])
CE_AGGREGATE(:var_table,[aggregate("column")[AS"renamed_col"]],["column",...])
例子:
[sql]
ot_books1=CE_AGGREGATION(:it_books,[COUNT("PUBLISHER")AS"CNT"],["YEAR"]);
ot_books1=CE_AGGREGATION(:it_books,[COUNT("PUBLISHER")AS"CNT"],["YEAR"]);
相当于:
[sql]
ot_books2=SELECTCOUNT(publisher)AScnt,yearFROM:it_booksGROUPBYyear;
ot_books2=SELECTCOUNT(publisher)AScnt,yearFROM:it_booksGROUPBYyear;
解释:
用于聚合运算。
相关文章推荐
- SAP HANA SQLScript
- 学习SAP HANA SQL
- SAP HANA SQL执行计划(SAP HANA SQL explain plan)
- SAP HANA SQL截取字符串
- SAP HANA SQL执行计划(SAP HANA SQL explain plan)(SQL 优化分析)
- SAP HANA SQL时间戳的用法
- 学习SAP HANA SQL 语句--像学Oracle一样学习SAP HANA
- 学习SAP HANA SQL 语句(创建 EMP,DEPT,BONUS 和 SALGRADE测试表)--像学Oracle一样学习SAP HANA
- SAP HANA SQL GROUP BY / ORDER BY / OVER / CASE
- SAP HANA SQL CREATE TRIGGER
- SAP HANA SQL获取当前日期加若干天后的日期
- SAP HANA SQL获取本周的周一
- [置顶] HANA 基础SQL和SQLScript
- SAP HANA SQL获取当前日期
- SAP HANA SQL获取当前日期最后一天
- SAP HANA SQL Error Codes
- SAP HANA SQL REPLACE替换字符串
- SAP HANA SQL IFNULL和NULLIF用法与区别
- SAP HANA SQL获取上周的周一
- SAP HANA学习资料中的基础表及数据SQL语句汇总