SQL SELECT-BEFEHL

Getting started ... Alles für einen gelungenen Start.
18 Beiträge • Seite 1 von 2 (current) Nächste
18 Beiträge Seite 1 von 2 (current) Nächste

SQL SELECT-BEFEHL

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Hallo,

das ist mein erster Beitrag in diesem Forum und ich hoffe ihr könnt mir helfen. :)
Ich bin seit kurzem Azubi als ABAP-Developer.

Nun ist meine Frage wie würde der SQL Befehl anhand dieses Screenshots lauten? :)
Bild

MfG
Maximilian
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: SQL SELECT-BEFEHL

Beitrag von zzcpak (Expert / 673 / 5 / 67 ) »
welcher Screenshot?

Re: SQL SELECT-BEFEHL

Beitrag von black_adept (Top Expert / 3950 / 105 / 886 ) »
Inzw. ist zwar ein Screenshot da - aber der ist so klein, dass man nix erkennen kann
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: SQL SELECT-BEFEHL

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Oh tut mir leid, hier ist ein link: http://www.directupload.net/file/d/4159/vricijgd_png
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

Re: SQL SELECT-BEFEHL

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Bräuchte dringend Hilfe! :)
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

Re: SQL SELECT-BEFEHL

Beitrag von black_adept (Top Expert / 3950 / 105 / 886 ) »
Hallo Maximilian,

da du Azubi bist gibt's keine fertige Lösung, denn damit lernst du nichts.
Aber einen Lektürevorschlag ( F1-Hilfe zu demjeweiligen Befehl )

1.) Wenn du noch nicht mit dem Befehl "SELECT" vertraut bist - das ist dein Startpunkt und mit der Grundform solltest du die Aufgabe schon lösen können
2.) Eleganter/effizienter wird es, wenn du beim Select einen "JOIN" verwendest. Je nachdem mit welcher der auf dem Screenshot angegebenen Tabellen du startest bzw. wofür du Selektionsbedingungen hast könnte es sein, dass du beim Join einen LEFT JOIN verwenden musst.

Eine winzige Hilfestellung gebe ich doch - aber nur für 2 Tabellen - den Rest musst du selber machen.

Code: Alles auswählen.

Select mara~matnr mara~bismt
       eina~infnr
    into corresponding fields of table mt_data
    from mara join eina on mara~matnr = eina~matnr
    where mara~matnr in s_matnr 
      and diverse weitere Selektionsbedingungen
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: SQL SELECT-BEFEHL

Beitrag von Niels (ForumUser / 77 / 18 / 9 ) »
Hi,
Dir den Code hinzuschreiben wäre meiner Meinung nach nicht hilfreich für dich. Wenn du schon was hast ist es Sinnvoller dadrüber zu schauen und dir anhand deines Codings Tipps zu geben, als dir den Code hier vorzuschreiben.
Wie black_adept schon geschrieben hat, lernst du damit nichts, wenn wir dir den Code vorschreiben.

Gruß

Niels

Re: SQL SELECT-BEFEHL

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Würde ich was daraus lernen wenn Sie mir den Code + Erklärung geben würden?
In ABAP bin ich soweit ganz fit für den Anfang, aber bei den SQL-Joins leider nicht :D
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

Re: SQL SELECT-BEFEHL

Beitrag von Haubi (Expert / 625 / 20 / 30 ) »
hmaxi96 hat geschrieben:Würde ich was daraus lernen wenn Sie mir den Code + Erklärung geben würden?
In ABAP bin ich soweit ganz fit für den Anfang, aber bei den SQL-Joins leider nicht :D
Dann wird's aber Zeit: http://sqlzoo.net

Viel Spaß damit.

Grüße,
Haubi

P.S.: ich bin ebenfalls der Meinung, dass Du deutlich mehr lernst, wenn Du Dir die Lösung erarbeitest... :-P
Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...

Re: SQL SELECT-BEFEHL

Beitrag von JHM (Top Expert / 1189 / 1 / 196 ) »
hmaxi96 hat geschrieben:Würde ich was daraus lernen wenn Sie mir den Code + Erklärung geben würden?
In ABAP bin ich soweit ganz fit für den Anfang, aber bei den SQL-Joins leider nicht :D
Mir fehlt eine normale Beschreibung dessen, was selektiert werden soll.
In der zur Verfügung gestellten Excel-Datei, scheinen wahllos DB-Felder zugeordnet zu sein. Bevor ich da einen Join aufbauen würde, würde ich viele Fragen an die Fachabteilung/den Anforderer stellen. Erst wenn ich weiß was gefordert ist, mach ich mich an die Datenbeschaffung. Dafür schaut ich mir die Tabellen an, in denen ich die Informationen vermute und gleiche diese mit den geforderten Daten ab. Dann baue ich den Join.

Dir hier eine JOIN-Lösung anzubieten, greift die Schritte der Anforderungsanalyse und der Datenanalyse vorweg. Das eigentliche Coding hilft dir da nicht viel weiter.

Deshalb beschreib mal was du Selektieren willst (verbal ohne technischen Schnickschnack). Dann kann man dich auch in die richtige Richtung weiter leiten. Für den Codingpart, hat black_adept dir ja schon eine ordentliche Hilfestellung gegeben.
Gruß Hendrik

Re: SQL SELECT-BEFEHL

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Was zu selektieren ist weiß ich ja.
Ich selektiere zuerst die marc-matnr um den Wert von makt-maktx und mara-bismt zu erhalten. Marc-werks bekomme ich auch aus der marc-matnr dann wird das Werk angezeigt in dem der Artikel liegt. Eina-lifnr erhalte ich auch von der marc-matnr um zu wissen wer diesen artikel liefert. Lfa1-name1 bekomme ich von der eina-lifnr. Eine-infnr aus der marc-matnr und eine-ekorg wsl aus der eine-infnr.
Das System verstehe ich nur komme ich mit dem Join nicht zurecht.
Ich könnte ja auch einfach mit einem LOOP, USING und CHANGING arbeiten aber ich möchte es gerne mit einem JOIN machen.
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

Re: SQL SELECT-BEFEHL

Beitrag von JHM (Top Expert / 1189 / 1 / 196 ) »
hmaxi96 hat geschrieben:Was zu selektieren ist weiß ich ja.
Nö, weißt du nicht, das beweist dein Posting ;-)
hmaxi96 hat geschrieben: Ich selektiere zuerst die marc-matnr um den Wert von makt-maktx und mara-bismt zu erhalten. Marc-werks bekomme ich auch aus der marc-matnr dann wird das Werk angezeigt in dem der Artikel liegt. Eina-lifnr erhalte ich auch von der marc-matnr um zu wissen wer diesen artikel liefert. Lfa1-name1 bekomme ich von der eina-lifnr. Eine-infnr aus der marc-matnr und eine-ekorg wsl aus der eine-infnr.
Sorry, da sind einige Unschärfen drin. Du beschreibst auch nur das Excel.

Die Frage ist was du auslesen willst:
- Eine Liste aller Materialien eines Werkes incl. der zugehörigen Infosätze?
- Alle Infosätze eines Werkes incl. der Materialien?
- ...
Welche Kriterien hast du um die Selektion einzugrenzen (SelOptions/Parameter)?
Damit kannst du den Weg des Joins ableiten: erst die Materialien oder doch zu erst die Infosätze.
Je nachdem was du lesen willst, leitet sich daraus auch ab ob du einen LEFT JOIN benötigst (z.B. alle Materialien eines Werkes, auch wenn es keinen Infosatz gibt).

das wäre dann die Anforderungsanlyse, fehlt noch die Datenanlyse:

Infosätze werden nicht nur in der EINA (Einkaufsinfosatz allgemein) sondern auch in der EINE (Einkaufsinfosatz Einkaufsorgdaten) gespeichert. Wenn du auf das Werk eingrenzen musst, musst du also auch die EINE mit lesen (sonst bekommst du Infosätze für ein Materials, welcher für ein anderes Werk gültig ist). Wenn du aber keine weiteren werksabhängigen Materialdaten mehr benötigst, brauchst du die MARC nicht mehr lesen.

Auch die Tabellen-Schlüssel scheinen noch nicht berücksichtigt: Die Sprache des Materialtextes muss berücksichtigt werden, sonst bekommst du evtl. ungewollt mehrfach Einträge für mehrere Sprachen.
Gruß Hendrik

Re: SQL SELECT-BEFEHL

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Meiner Meinung nach kann man die Bedeutung der Felder aus der Excel herauslesen ;)

Welche Kriterien hast du um die Selektion einzugrenzen (SelOptions/Parameter)?
Select-Options: s_matnr und s_werks

Sprachenschlüssel hab ich berücksichtigt aber leider vergessen hinzuschreiben, verwendet wird der aus der makt-spras und mit sy-langu abgefragt.
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

Re: SQL SELECT-BEFEHL

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
Da muss ich jetzt auch mal meinen Senf dazugeben, und zwar an den Azubi. Die Aufgabe ist (im Vergleich dazu, was in der Praxis auf dich warten würde) sehr, sehr, sehr einfach.

Wenn du dir DAS schon nicht erarbeiten kannst, dann sieht es grundsätzlich schlecht aus. Was in diesem Beruf zählt, ist nicht Wissen, sondern Problemlösungskompetenz.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: SQL SELECT-BEFEHL

Beitrag von black_adept (Top Expert / 3950 / 105 / 886 ) »
@Maximilian
hmaxi96 hat geschrieben:Meiner Meinung nach kann man die Bedeutung der Felder aus der Excel herauslesen ;)
Eben nicht. Und mit Verlaub - die Leute die dir bisher geantwortet haben sind durch die Bank sehr! erfahrene Programmier im SAP-Umfeld. Wenn die dir sagen "da fehlt was", dann fehlt da was!
Wenn wir dir sagen "Mach dies" oder "Lies jenes" machen wir das nicht um dich zu kritisieren ( wir wissen ja, dass es dir an Erfahrung fehlt ) sondern um dich in die richtige Richtung zu leiten.

Vielleicht noch 1x ganz speziell die Frage, die JHM aus dir rauskitzeln wollte:
  • Sollst du alle Materialien anlisten im Werk xxx und dann schauen ob die einen Infosatz haben und dann die zugehörigen Infos dazulesen
    oder
  • Alle Infosätze zu Materialien im Werk xxxx lesen, die schon existieren und dann die zugehörigen Infos lesen
Die Antwort auf diese Frage bestimmt dann, wie der zugehörige Join aufgebaut werden muss.

@Ralf
ralf.wenzel hat geschrieben:Da muss ich jetzt auch mal meinen Senf dazugeben, und zwar an den Azubi. Die Aufgabe ist (im Vergleich dazu, was in der Praxis auf dich warten würde) sehr, sehr, sehr einfach.
Wenn du dir DAS schon nicht erarbeiten kannst, dann sieht es grundsätzlich schlecht aus. Was in diesem Beruf zählt, ist nicht Wissen, sondern Problemlösungskompetenz.
*Sigh* - ein typisches Ralf-Posting
Der Ton macht die Musik!
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Vergleichbare Themen

5
Antw.
2052
Views
Typecast bei Select-Befehl
von Senshi » 05.11.2007 16:17 • Verfasst in ABAP® für Anfänger
3
Antw.
436
Views
TSTMP in select-Befehl
von Frank Schmitt » 26.05.2020 11:00 • Verfasst in ABAP® für Anfänger
4
Antw.
2166
Views
Eine Frage zum SELECT-Befehl
von JürgenFFM » 26.06.2006 10:24 • Verfasst in ABAP® Core
1
Antw.
277
Views
SELECT-FROM-Befehl und Löschen von Einträgen
von lr_1504 » 10.01.2020 16:53 • Verfasst in ABAP® für Anfänger
3
Antw.
7729
Views
sql befehl select leere felder = '' ?
von michaels » 27.01.2005 14:41 • Verfasst in ABAP® Core

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.