Give the syntax of Inner,outer Join?"
Answers were Sorted based on User's Feedback
inner join :
select P~<fieldname> d~<fieldname> into corresponding
fields of table <internaltable> from ( <table> as p inner
join <table> as d on <join condition> and <cond>.
outer join:
select P~<fieldname> d~<fieldname> into corresponding
fields of table <internaltable> from ( <table> as p left
outer join <table> as d on <join condition> and <cond>.
Is This Answer Correct ? | 29 Yes | 3 No |
Effect
The join syntax represents a recursively nestable join
expression. A join expression consists of a left-hand and a
right- hand side, which are joined either by means of
[INNER] JOIN or LEFT [OUTER] JOIN. Depending on the type of
join, a join expression can be either an inner (INNER) or
an outer (LEFT OUTER) join. Every join expression can be
enclosed in round brackets. If a join expression is used,
the SELECT command circumvents SAP buffering.
The syntax of the join conditions join_cond is the same as
that of the sql_cond conditions after the addition WHERE,
with the following differences:
At least one comparison must be specified after ON.
Individual comparisons may be joined using AND only.
All comparisons must contain a column in the database table
or the view dbtab_right on the right-hand side as an
operand.
The following additions not be used: NOT, LIKE, IN.
No sub-queries may be used.
For outer joins, only equality comparisons (=, EQ) are
possible.
If an outer join occurs after FROM, the join condition of
every join expression must contain at least one comparison
between columns on the left-hand and the right-hand side.
In outer joins, all comparisons that contain columns as
operands in the database table or the view dbtab_right on
the right-hand side must be specified in the corresponding
join condition. In the WHERE condition of the same SELECT
command, these columns are not allowed as operands
Example INNER JOIN :
Join the columns carrname, connid, fldate of the database
tables scarr, spfli and sflight by means of two inner
joins. A list is created of the flights from p_cityfr to
p_cityto. Alternative names are used for every table.
PARAMETERS: p_cityfr TYPE spfli-cityfrom,
p_cityto TYPE spfli-cityto.
DATA: BEGIN OF wa,
fldate TYPE sflight-fldate,
carrname TYPE scarr-carrname,
connid TYPE spfli-connid,
END OF wa.
DATA itab LIKE SORTED TABLE OF wa
WITH UNIQUE KEY fldate carrname connid.
SELECT c~carrname p~connid f~fldate
INTO CORRESPONDING FIELDS OF TABLE itab
FROM ( ( scarr AS c
INNER JOIN spfli AS p ON p~carrid = c~carrid
AND p~cityfrom = p_cityfr
AND p~cityto = p_cityto )
INNER JOIN sflight AS f ON f~carrid = p~carrid
AND f~connid = p~connid ).
LOOP AT itab INTO wa.
WRITE: / wa-fldate, wa-carrname, wa-connid.
ENDLOOP.
Example OUTER JOIN:
PARAMETERS p_cityfr TYPE spfli-cityfrom.
DATA: BEGIN OF wa,
carrid TYPE scarr-carrid,
carrname TYPE scarr-carrname,
connid TYPE spfli-connid,
END OF wa,
itab LIKE SORTED TABLE OF wa
WITH NON-UNIQUE KEY carrid.
SELECT s~carrid s~carrname p~connid
INTO CORRESPONDING FIELDS OF TABLE itab
FROM scarr AS s
LEFT OUTER JOIN spfli AS p ON s~carrid = p~carrid
AND p~cityfrom =
p_cityfr.
LOOP AT itab INTO wa.
IF wa-connid = '0000'.
WRITE: / wa-carrid, wa-carrname.
ENDIF.
ENDLOOP.
Thank's and Regards,
Shreeshail Diggi
SAP Technical Consultant Infinite India
Is This Answer Correct ? | 12 Yes | 1 No |
Answer / ravi ranjan
*&-----------------------------------*
*& Report ZSELECT_STA *
*& *
*&-----------------------------------*
*& Author : Ravi Ranajn upadhyay *
*& *
*&-----------------------------------*
REPORT zselect_sta.
TABLES: mara.
TYPES:BEGIN OF it_mara,
ernam TYPE mara-ernam,
matnr TYPE mara-matnr,
meins TYPE mara-meins,
burks TYPE ekpo-bukrs,
werks TYPE ekpo-werks,
END OF it_mara.
DATA:its_mara TYPE TABLE OF it_mara,
wa_mara TYPE it_mara.
SELECT m~matnr m~ernam m~meins k~werks k~bukrs
INTO CORRESPONDING FIELDS OF TABLE its_mara
FROM mara AS m inner JOIN ekpo AS k
ON m~matnr = k~matnr.
LOOP AT its_mara INTO wa_mara.
WRITE: / wa_mara-ernam,
wa_mara-matnr,
wa_mara-meins,
wa_mara-burks,
wa_mara-werks.
ENDLOOP.
Is This Answer Correct ? | 9 Yes | 0 No |
Answer / ravi ranjan
syntax of inner join:-
select t1~field1 t1~field2 t2~field3 t3~field4
INTO CORRESPONDING FIELD OF TABLES <INTERNAL TABLE>
FROM TABLE1 AS t1 inner join table2 as t2 on
t1~field1(key field) = t2~field2(key field).
Is This Answer Correct ? | 9 Yes | 1 No |
Answer / venumadhav
suppose tables LFA1 ,EKKO.
select a~lifnr a~name1 a~ort01
b~ebeln b~ebelp
from a as LFA1 inner join b as EKKO on
a~lifnr = b~lifnr.
Is This Answer Correct ? | 23 Yes | 17 No |
Answer / ravi kanth
@ Shreeshail Diggi
Your answer is Awesome.
Good Conceptual Answer.
Thanks to all others posts as well.
Is This Answer Correct ? | 0 Yes | 1 No |
Answer / lal bahadur sharma
SELECT c~carrname p~connid f~fldate
INTO CORRESPONDING FIELDS OF TABLE itab
Is This Answer Correct ? | 1 Yes | 6 No |
what is the difference between data: begin of ty_emp, eno type i, ename type string, dno type i, end of ty_emp. and types: begin of ty_emp, eno type i, ename type string, dno type i, end of ty_emp.
Where are the LSMW events :BEGIN_OF_PROCESSING, BEGIN_OF_TRANSACTION and BEGIN_OF_RECORD declared? Why?
1 Answers Cap Gemini, Deloitte,
what is the unit of work
how can u write in single program call transaction and session method logic? if u write logic in call transaction ,is there any errors ? how can u see in session ?
Suppose if I’ve 10 records, I don’t want to update 9th record? How can we do that?
In select-options, how to get the default values as current month first date and last date by default?
in script can i print the back page of a paper
what is 'X' parameter in BAPI?
If a table that is to be extended contains a long field, we cannot use append structures why? : abap data dictionary
what is an internal table and types of internal table
In se11 -->Tech. settings --> Data class. If I save table as Mater data OR Transaction data, what effect will it has for 'Storage' in Database after activation. or In Database how it will store in both the cases.
What are the data classes in abap?