当前位置: 首页 > news >正文

主机开通成功网站建设中google浏览器官网

主机开通成功网站建设中,google浏览器官网,深圳网站制作 论坛,做网站一定要psd吗SAP ABAP 语法更新之Open SQL1、前言2、演示1、前言 自从 SAP 推出 SAP ON HANA,与之相随的 AS ABAP NW 7.40 版本以后,ABAP 语法也有了较多的更新,本篇对 Open Sql的语法更新部分做一个DEMO演示。 NW 7.40 以前 OpenSQL 的限制&#xff1a…

SAP ABAP 语法更新之Open SQL

  • 1、前言
  • 2、演示

1、前言

自从 SAP 推出 SAP ON HANA,与之相随的 AS ABAP NW 7.40 版本以后,ABAP 语法也有了较多的更新,本篇对 Open Sql的语法更新部分做一个DEMO演示。

NW 7.40 以前 OpenSQL 的限制:
① 没有固定值或计算列;
② 没有Case表达式;
③ 没有 right outer join;
④ 没有 Union;
⑤ 没有子查询

NW 7.40 开始 OpenSQL 支持的新特性:
① CASE;
② COALESCE;
③ 算术表达式:+,-,*,/;
④ CAST类型转换;
⑤ 算术函数:DIV、MOD、ABS、FLOOR、CEIL、ROUND;
⑥ 聚合函数:SUM,COUNT,AVG,MAX,MIN;
⑦ 字符串连接符 &&;
⑧ right outer join;
⑨ union and union all
存在的限制:
① 无法使用 SAP HANA 内置函数,如DAYS_BETWEEN;
② 无法使用 SAP HANA 数据库视图和存储过程

2、演示

*&---------------------------------------------------------------------*
*& Report Y_XLEVON_OPEN_SQL
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT y_xlevon_open_sql.TYPES: BEGIN OF ty_sflight,carrid   TYPE sflight-carrid,connid   TYPE sflight-connid,fldate   TYPE sflight-fldate,seatsmax TYPE sflight-seatsmax,seatsocc TYPE sflight-seatsocc,status   TYPE char10,END OF ty_sflight.PARAMETERS:p_carrid TYPE sflight-carrid,p_cust   TYPE scustom-name.*1CASE表达式
* Old syntax for before AS ABAP 7.4 SP05
DATA: gt_data TYPE STANDARD TABLE OF ty_sflight.
FIELD-SYMBOLS: <fs_sflight> TYPE ty_sflight.SELECTcarridconnidfldateseatsmaxseatsocc
FROM sflight
INTO TABLE gt_data
WHERE carrid = p_carrid.LOOP AT gt_data ASSIGNING <fs_sflight>.IF <fs_sflight>-seatsocc GT 300.<fs_sflight>-status = 'High OCC'.ELSE.<fs_sflight>-status = 'Low OCC'.ENDIF.
ENDLOOP.* AS ABAP 7.4 SP05
SELECTcarrid,connid,fldate,seatsmax,seatsocc,CASE WHEN seatsocc GT 300 THEN 'High OCC'ELSE 'Low OCC'END AS status
*into table @DATA(gt_data2)   " syntax OK
FROM sflight
*into table @DATA(gt_data2)   " syntax OK
WHERE carrid = @p_carrid
INTO TABLE @DATA(gt_data2).* New Syntax 7.5+
SELECT FROM sflightFIELDS carrid,connid,fldate,seatsmax,seatsocc,CASE WHEN seatsocc GT 300 THEN 'High OCC'ELSE 'Low OCC'END AS status
*into table @DATA(gt_data3).   " syntax error
WHERE carrid = @p_carrid
INTO TABLE @DATA(gt_data3).   " 必须放在最后*2)字面&算术表达式
DATA: lv_rebate TYPE p DECIMALS 2 VALUE '0.10'.
SELECT'hello' && 'XLevon' AS char,                    " 字符串拼接100 AS i_num,                                   " 整型@sy-langu AS sys_lan,                           " 系统语言@lv_rebate AS p_num,                            " 定点小鼠price,( price * @lv_rebate ) AS rebate,               " 折扣round( ( price * @lv_rebate ), 1 ) AS round_col," 折扣保留一位小数ceil( ( price * @lv_rebate ) ) AS ceil_col,floor( ( price * @lv_rebate ) ) AS floor_col
FROM sflight
WHERE carrid = @p_carrid
INTO TABLE @DATA(gt_data_expression).*3)聚合函数
SELECTcarrid,connid,COUNT( DISTINCT ( fldate ) ) AS distinct_fldate,SUM( seatsmax ) AS sum_seatsmax,CAST( AVG( seatsocc ) AS INT4 ) AS avg_seatsocc
FROM sflight
WHERE carrid = @p_carrid
GROUP BY carrid, connid
INTO TABLE @DATA(gt_data_aggregate).*4)右外连接
SELECTscarr~carrid,scarr~carrname,spfli~connid,spfli~cityfrom,spfli~cityto
FROM scarr
RIGHT OUTER JOIN spfli ON spfli~carrid = scarr~carrid
WHERE coalesce( scarr~carrid, 'NO CARR' ) <> 'NO CARR'
ORDER BY scarr~carrid, spfli~connid
INTO TABLE @DATA(gt_data_COALESCE)UP TO 10 ROWS.*5UNION & sub query
SELECT FROM sbookFIELDS 1 AS type, carrid, connid, fldate, bookid,CAST( loccuram AS FLTP ) / CAST( 2 AS FLTP ) AS div_field,loccurkey
WHERE customid IN ( SELECT id FROM scustom WHERE name = 'Martin' )
UNION ALL
SELECT FROM sbookFIELDS 2 AS type, carrid, connid, fldate, bookid,CAST( loccuram AS FLTP ) / CAST( 2 AS FLTP ) AS div_field,loccurkey
WHERE customid IN ( SELECT id FROM scustom WHERE name = @p_cust )
ORDER BY type, carrid, connid, fldate, bookid
INTO TABLE @DATA(gt_data_union).*6)应用:判断数据记录是否存在
DATA: lv_msg TYPE string.
SELECT SINGLE @abap_trueFROM scustomINTO @DATA(lv_exists)WHERE name = @p_cust.
IF lv_exists EQ abap_true.CONCATENATE 'Customer' p_cust 'Exists' INTO lv_msg SEPARATED BY space.
*  lv_msg = 'Customer ' && p_cust && ' Exists'.   " 前两个单词间空格丢失
ELSE.lv_msg = 'Customer ' && | { p_cust } doesn't Exists|.
ENDIF.cl_demo_output=>write( gt_data ).
cl_demo_output=>write( gt_data2 ).
cl_demo_output=>write( gt_data3 ).
cl_demo_output=>write( gt_data_expression ).
cl_demo_output=>write( gt_data_aggregate ).
cl_demo_output=>write( gt_data_COALESCE ).
cl_demo_output=>write( gt_data_union ).
cl_demo_output=>write( lv_msg ).
cl_demo_output=>display( ).

原创文章,转载请注明来源-X档案

http://www.mmbaike.com/news/60178.html

相关文章:

  • 用jsp做网站用什么软件惠州seo外包平台
  • 网站制作常用代码做百度推广怎么做才能有电话
  • 连云港东海县做网站互联网十大企业
  • 前端开发面试题及答案企业网站优化价格
  • 鄂州第一官方网站西安楼市最新房价
  • 福州网站维护搜狗收录批量查询
  • 关于网站开发的网站seo培训优化课程
  • 专门做985招聘信息的网站seo文章范文
  • 网站开发数据库动态管理百度收录批量提交入口
  • 做网站先建立模型seo网络推广技术员招聘
  • 网站素材免费下载成都网站seo诊断
  • 东莞品牌网站设计公司计公司万能的搜索引擎
  • 垫江网站建设费用百度一下你就知道官方网站
  • 做网站现在可以挣钱吗产品代理推广方案
  • 政府网站集约化建设的背景搜索指数的数据来源是什么
  • 做网站使用什么语言写百度 seo 工具
  • 免费网站注册永久杭州seo推广排名稳定
  • 如何做一个免费的网站查询域名网站
  • 辽宁省建设厅网站更新简单制作html静态网页
  • 三元区建设小学网站江苏网页定制
  • 网站开发员招聘如何在百度上发自己的广告?
  • 国贸网站建设聊城网站开发
  • html网站开发心得营销培训课程
  • 做的响应式网站用什么测试西安seo网络优化公司
  • 江苏付费网络推广培训宁波关键词优化排名工具
  • 网站建设公司排名及费用关键词如何确定
  • 无锡设计师网站免费做网站怎么做网站
  • 视频网站 如何做seo网站seo重庆
  • 东莞seo排名收费网站seo快速优化技巧
  • 网站建设费专用发票能不能抵扣中国十大品牌策划公司