SAP ABAP如何创建具有特殊条件的查询

时间:2016-12-04 14:24:47

标签: sap abap

请告诉我怎么做: 有一张桌子MAKT。我有法语MAKTX(SPRAS ='FR'),但如果法语不在这里,则需要用英语显示MAKTX。如何正确地做到这一点?

 IF MAKT-SPRAS='FR'.
    SELECT SINGLE MAKT-MAKTX FROM MAKT WHERE SPRAS='FR'.
 ELSE.
    SELECT SINGLE MAKT-MAKTX FROM MAKT WHERE SPRAS='EN'.
 ENDIF.

3 个答案:

答案 0 :(得分:2)

你可以通过订购获得。

select * from MAKT where SPRAS = 'FR' or SPRAS = 'EN' order by SPRAS descending.
  exit.
endselect.

答案 1 :(得分:1)

在这种情况下,我个人不建议将struct Image { String name; int width; int height; }; typedef struct Image Image; Image* make_image(String name, int width, int height) { image* image = xmalloc(sizeof(Image)); image->name = name; image->last_name = width; image->height = height; return image; } SELECT...EXIT ENDSELECT.一起使用!

这是一种更简洁的方式,可以完全控制您想对数据库执行的操作:

ORDER BY

这将选择法语或英语的材料文本,但只是法语文本不存在。

根据第一条评论编辑。你是对的,......单个......在SELECT语句中丢失了。

答案 2 :(得分:0)

您可以像这样在ABAP中创建动态where子句。

PrintControlIdentifiers()