一、SELECT 语句
SELECT[DISTINCT] [AS ] INTO|APPEND [CORRESPONDING FIELDS OF] TABLE [PACKAGE SIZE ].. FROM [AS ] UP TO ROWS... [INNER]JOIN [AS ] ON ... WHERE ... GROUP BY .. HIVING . ORDER BY PRIMARY KEY.
lines:single
读取一条数据:.
SELECT SINGLE... WHERE
注意:限制好where条件,否则返回任意一条数据,与预期结果不同.
DISTINCT :删除重复值。
SELECT [DISTINCT]...WHERE
当INTO 为字段或者结构体时,结尾必须加上ENDSELECT;如果是内表则不需要。
AS:别名
SELECT[AS ]..
INTO语句:
1. [CORRESPONDING FIELDS OF]
SELECT ...INTO [CORRESPONDING FIELDS OF].
2.内表
查询多条数据是使用内表,须使用APPENDING,不能使用INTO,INTO是删除内表数据后插入时使用的。
SELECT ...INTO|APPEND [CORRESPONDING FIELDS OF]TABLE [PACKAGE SIZE ]..
PACKAGE SIZE:表示每次追加到内表的条数,此时须使用ENDSELECT.
SELECT INTO CORRESPONDING FIELDS OF TABLE itab PACKAGE SIZE 5 FROM SPFLI. ENDSELECT.
FROM语句:
1.选择静态表:
SELECT ...FROM[AS ]
2.JOIN语句
SELECT ...FROM[INNER] JOIN [AS ] ON ...
3.限制查询个数
SELECT ...FROMUP TO ROWS...
WHERE语句:
1.where条件语句
SELECT ...WHERE...
2.常用语句
SELECT ...WHERE[NOT]BETWEENAND . SELECT ...WHERE COL2 LIKE '_ABC%'. SELECT ...WHERE [NOT]IN (,.., )... SELECT ...WHERE [NOT]IN... 查询存在selection table,Range变量里的数据。
3.FOR ALL ENTRIES 语句.
SELECT ... FOR ALL ENTRIES INWHERE
GROUP :
SELECT... GROUP BY ... HIVING .
ORDER BY:
-根据标的key值进行排序。
-只适合于SELECT * 语句。
-在JOIN语句和视图中无法使用。
SELECT ... ORDER BY[ASCENDING|DESCENDING] [ASCENDING|DESCENDING]
二、INSERT
一条数据
INSERT INTOVALUES . INSERT FROM .
多条数据.
INSERTFROM TABLE [ACCEPTING DUPLICATE KEYS]
插入数据时,避免有相同主键引起dump error错误,使用ACCEPTING DUPLICATE。此时sy-subrc返回4.
三、UPDATE
一条数据
UPDATEFROM . "表结构相同
多条数据.
UPDATEFROM TABLE . UPDATE SET WHERE .
四、DELETE
一条数据
DELETEFROM . "表结构相同
多条数据.
DELETE FROMWHERE .
五、MODIFY.
一条数据
MODIFYFROM . "表结构相同
多条数据.
MODIFYFROM TABLE .