10-25-2007 7:08 AM
Hi Experts,
Can we use FOR ALL ENTRIES option and inner join in one select query?
If so can any body let me know the example?
Will it effect to performance?because some times it may needed.
Regards
10-25-2007 7:10 AM
Hi,
Yes you can use both into a single query.
Performance wont be affected.
SELECT c~carrname p~connid f~fldate
INTO CORRESPONDING FIELDS OF TABLE itab
FOR ALL ENTRIES IN IMAIN
FROM ( ( scarr AS c
INNER JOIN spfli AS p ON p~carrid = c~carrid
AND p~cityfrom = IMAIN-CITYFROM
AND p~cityto = IMAIN-CITYTO )
INNER JOIN sflight AS f ON f~carrid = p~carrid
AND f~connid = p~connid ).
Best regards,
Prashant
10-25-2007 7:10 AM
Hi,
Yes you can use both into a single query.
Performance wont be affected.
SELECT c~carrname p~connid f~fldate
INTO CORRESPONDING FIELDS OF TABLE itab
FOR ALL ENTRIES IN IMAIN
FROM ( ( scarr AS c
INNER JOIN spfli AS p ON p~carrid = c~carrid
AND p~cityfrom = IMAIN-CITYFROM
AND p~cityto = IMAIN-CITYTO )
INNER JOIN sflight AS f ON f~carrid = p~carrid
AND f~connid = p~connid ).
Best regards,
Prashant
10-25-2007 7:41 AM
10-25-2007 7:12 AM
see the following query...
SELECT crmd_link~guid_hi
bbp_pdacc~set_guid
bbp_pdacc~acc_no
bbp_pdacc~acc_cat
bbp_pdacc~g_l_acct
bbp_pdacc~dist_ind
bbp_pdacc~distr_perc
bbp_pdacc~dist_quan
bbp_pdacc~cost_ctr
bbp_pdacc~wbs_elem_e
bbp_pdacc~order_no
FROM bbp_pdacc INNER JOIN crmd_link
ON bbp_pdaccset_guid EQ crmd_linkguid_set
INTO CORRESPONDING FIELDS OF TABLE t_acc_asg
FOR ALL ENTRIES IN t_item_data
WHERE crmd_link~guid_hi EQ t_item_data-guid.
10-25-2007 7:13 AM
Hi,
Yes we can use both in one query.
ex.
SELECT a~vbeln "Billing document
a~fkdat "Billing date
a~fktyp "Billing category
a~fkart "Billing type
a~vtweg "Distribution channel
a~knumv "Number of doc condition
b~posnr "Billing item
b~matnr "Material Number
b~werks "Plant
b~vgbel "Referance
b~kzwi2 "Subtotal 2
b~wavwr "Cost in document currency
c~kunnr "Partner function
FROM vbrk AS a
INNER JOIN vbrp AS b
ON avbeln EQ bvbeln
INNER JOIN vbpa AS c
ON bvbeln EQ cvbeln
INTO CORRESPONDING FIELDS OF TABLE it_vbrp
for all entries in it_vbak
WHERE
AND parvw EQ 'ZS'.
regards,
Prashant
10-25-2007 7:27 AM
HI Ravi,
Better to use only for all entries. If it is need definately, then only use both because If u use both performancewise it's not good.
This is some simple select query.
SELECT A~MBLNR
A~BWART
A~DMBTR
A~EBELN
A~EBELP
B~BUDAT
FROM MSEG AS A INNER JOIN MKPF AS B
ON AMBLNR = BMBLNR and AMJAHR = BMJAHR
INTO TABLE IT_MSEG
FOR ALL ENTRIES IN IT_EKPO
WHERE EBELN = IT_EKPO-EBELN.
Thanks and Regards,
Surya
10-25-2007 7:33 AM
Hi Ravi,
Yes, we can use FOR ALL ENTRIES option and INNER JOIN in one select query.
Example is as follows:
TABLES: MARA , MAKT.
TYPES: BEGIN OF GS_DATA,
MATNR TYPE MARA-MATNR,
END OF GS_DATA,
BEGIN OF GS_DATA1,
MATNR TYPE MARA-MATNR,
MAKTX TYPE MAKT-MAKTX,
WERKS TYPE MAKG-WERKS,
END OF GS_DATA1.
DATA: ITAB1 TYPE STANDARD TABLE OF GS_DATA,
WA1 LIKE LINE OF ITAB1,
ITAB2 TYPE STANDARD TABLE OF GS_DATA,
WA2 LIKE LINE OF ITAB2.
START-OF-SELECTION.
SELECT MATNR INTO CORRESPONDING FIELDS OF TABLE ITAB1 FROM MARA.
SELECT AMATNR AMAKTX B~WERKS
FROM ( MAKT AS A INNER JOIN MAKG AS B
ON AMATNR = BMATNR )
INTO CORRESPONDING FIELDS OF TABLE ITAB2
FOR ALL ENTRIES IN ITAB1
WHERE A~MATNR = ITAB1-MATNR.
No,it does not affect the performance and you can use it wherever required.
Thanks and Regards,
Shilpi