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 ? | 22 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 |
How do you find if a logical database exists for your program requrements?
Write the bdc table structure? : abap bdc
Is there Any Module in SAP for Internal Audit?
in start of selection if we perform validation ,what happens?
2 Answers Bristle Cone, Cap Gemini, HP, Satyam, Wipro,
What is generic area buffering in abap?
What are client dependant objects in abap/sap?
What is the table buffer?
What are Change header/detail tables? Have you used them?
Advantages and disadvantages of different types of bdc's?
How to create secondary index ?
Tell me a scenario where did you use secondary index?
Difference between inner join and outer join in abap