Code: Alles auswählen.
SELECT (itab_group) COUNT(*) INTO (<group>, count)
FROM (p_tab) CLIENT SPECIFIED
WHERE mandt = sy-mandt
AND (itab_where)
GROUP by (itab_group).
WRITE: / <group>,
count.
ENDSELECT.
Versuchs mal mit COUNT( * ). ABAP ist da manchmal bockig und will die Leerzeichen.c0lt.seavers hat geschrieben:Nun meckert er: Fehlerhafter Ausdruck "COUNT(*)" bei Angabe einer Aggregatfunktion.
Insbesondere bei Include- u./o. Append-Strukturen muss man aber aufpassen.Anonymous hat geschrieben:Ja gibt es selbstverständlich: DD03L heisst das gute Stück.Wenn ich gerade dabei bin, in SAP gibt es doch bestimmt eine Tabelle in der alle Tabellennamen und die Zeilen der Tabellen enthalten sind oder?
Code: Alles auswählen.
COUNT( * )
Geht so auch nicht, hab eben nicht genau genug gelesen.c0lt.seavers hat geschrieben:ändert jedoch leider nichts an dem FehlerCode: Alles auswählen.
COUNT( * )
.
Code: Alles auswählen.
select (itab_group) into <group>
from (p_tab) client specified
where mandt = sy-mandt
and (itab_where)
group by (itab_group).
Leerzeichen bei COUNT mitgeben!c0lt.seavers hat geschrieben:Der darin auftretende Feldname "COUNT(*)" kommt in keiner der
Datenbanktabellen aus der FROM-Klausel vor.
Code: Alles auswählen.
FORM my_select USING l_group TYPE string.
DATA: l_columns TYPE TABLE OF string,
l_container TYPE string,
l_count TYPE i.
APPEND l_group TO l_columns.
APPEND `count( * )` TO l_columns.
SELECT (l_columns)
FROM spfli
INTO (l_container, l_count)
GROUP BY (l_group).
WRITE: / l_count, l_container.
ENDSELECT.
ENDFORM.