[SQL allgemein] Hilfe Logik

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [SQL allgemein] Hilfe Logik

    Hallo, ich habe gerade ein Projekt (Essenbestellung) und brauche eure Hilfe.
    Ich weis nicht wie ich die Tabellen am besten verknüpfen soll!


    Folgende Struktur:

    Tabelle: Bestellung
    ID|Name|Datum|Vorspeise|Hauptspeise|Nachspeise
    1| Franz|08.08.2004|Suppe|Schnitzel|Kuchen

    Tabelle: Preisliste_Vorspeise
    typ|preis|steuer
    Suppe|1.30|10
    Salat|0.90|10
    ...

    Tabelle: Preisliste_Hauptspeise
    typ|preis|steuer
    Schnitzel|2.30|10
    Pommes|1.20|10
    ....

    Tabelle: Preisliste_Nachspeise
    typ|preis|steuer
    ....


    usw. jetzt soll das ganze verknüpft werden damit man es verrechnet kann daher soll geschaut werden ID1 Franz hat am $datum folgendes gegessen:
    1x Suppe = 1,30
    1x Schnitzel = 2.30
    1x Kuchen = 0.90
    Summe= 4.50

    das sollte für jeden Tag und jeden mitarbeiter passiern, die summe wird dann in die Datenbank gepspeichert und dann summiert!

    Meine frage ist wie löse ich sowas am schönsten!
    Im Prinzip ist es ähnlich wie ein Warenkorb (Onlineshop) allerdings weis ich nicht wie die das lösen!

    Wie würdet ihr das ganze lösen? wie würdet ihr die tabellen anordnen und verknüpfen!

    Verwendet wird
    wampp2
    Windwos 2003 Server /edit etwas zu eilig

    thx

    S.
    Zuletzt geändert von Silent; 19.08.2004, 13:18.

  • #2
    20003?
    der sollte das von alleine können


    alternativ könntest du dir eine tabelle machen in der du die art der speise (vorspeise, hauptgericht, nachspeise) speicherst

    eine tabelle speisen, in der du alle vorspeisen, hauptgerichte und nachspeisen speicherst (mit der id aus der tabelle speise_art als fremdschlüssel)
    der preis gehört auch dahin, bei der steuer lass ich mit mir reden

    eine tabelle gegessen wo du immer user_id und datum speicherst und in einer dritten tabelle die id aus der tabelle speisen


    das summieren und speichern der summe in der datenbank kannst du bleiben lassen
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Original geschrieben von mrhappiness
      20003?
      der sollte das von alleine können

      ja so schnell kanns gehen

      Original geschrieben von mrhappiness
      alternativ könntest du dir eine tabelle machen in der du die art der speise (vorspeise, hauptgericht, nachspeise) speicherst


      eine tabelle speisen, in der du alle vorspeisen, hauptgerichte und nachspeisen speicherst (mit der id aus der tabelle speise_art als fremdschlüssel)
      der preis gehört auch dahin, bei der steuer lass ich mit mir reden
      [/B]
      hmh verstehe ich nicht ganz, meinste zu zusätzlich zu meinen tabs. oben oder komplett neu?

      Original geschrieben von mrhappiness
      eine tabelle gegessen wo du immer user_id und datum speicherst und in einer dritten tabelle die id aus der tabelle speisen





      das summieren und speichern der summe in der datenbank kannst du bleiben lassen [/B]
      wie meinst du das mit dem summiern?
      kann ich das in der db machen?

      Kommentar


      • #4
        Original geschrieben von Silent
        hmh verstehe ich nicht ganz, meinste zu zusätzlich zu meinen tabs. oben oder komplett neu?
        oder


        und summieren kannst du in der datenbank
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          so ich habe jetzt mal ein kleines bild gemacht wie ich glaube das ich mir das vorstelle

          in gegessen werden dann jeweils nur die IDs von den Preislisten (vorpspeise,hauptspeise,nachspeise) gespeichert!


          nur wie mache ich das dann mit der verrechnung?
          wie zähle ich das zusammen

          ich sehe gerade die erste beziehung stimmt nicht gehört vertauscht
          Angehängte Dateien

          Kommentar


          • #6
            das modell ist doof


            Code:
            speise_art
            sa_id | sa_name
                1 | Vorspeise
                2 | Hauptspeise
                3 | Nachspeise
            
            speise
            s_id | sa_id | s_name     | s_preis
               1 |     1 |      Suppe |    0.55
               2 |     1 |      Salat |    1.10
               3 |     2 |  Schnitzel |    2.50
               4 |     3 |     Kuchen |    1.00
               5 |     3 |      Quark |    0.75
            
            gegessen
            g_id | u_id | tag        | s_id
               1 |    1 | 2004-08-19 |    1
               2 |    1 | 2004-08-19 |    3
               3 |    1 | 2004-08-19 |    5
               2 |    2 | 2004-08-19 |    3
               3 |    2 | 2004-08-19 |    4
               3 |    2 | 2004-08-19 |    5
            
            benutzer
            u_id | u_name
               1 | silent
               2 | karl-heinz
            so in etwa hab ich das gemeint
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              wow thx so könnte es funktionern das ich in der tab. speise alles drinn habe nur wie frage ich jetzt ab:


              Alle Summen die im August 08 gegessen wurden?

              Kommentar


              • #8
                ausnahmsweise
                Code:
                SELECT SUM(s.s_preis) summe
                FROM
                  gegessen g
                  INNER JOIN speise s ON (g.s_id = s.s_id)
                WHERE datum LIKE '2004-08%'
                so zum beispiel bekommst du alles, was im august 2004 gegessen wurde zusammengezählt

                mehr steht im mysql handbuch (gibt's auch online auf mysql.com) und im sticky thread hier

                ein paar mehr grundlagen wären hilfreich, meinst du nicht?
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  Original geschrieben von Silent
                  wow thx so könnte es funktionern das ich in der tab. speise alles drinn habe nur wie frage ich jetzt ab:


                  Alle Summen die im August 08 gegessen wurden?
                  Schau dir mal SUM() an
                  *winks*
                  Gilbert
                  ------------------------------------------------
                  Hilfe für eine Vielzahl von Problemen!!!
                  http://www.1st-rootserver.de/

                  Kommentar


                  • #10
                    Original geschrieben von mrhappiness


                    ein paar mehr grundlagen wären hilfreich, meinst du nicht?
                    danke schon mal, ja bin gerade dabei diese grundlagen aufzubauen, allerdings habe ich bisher noch nicht allzuviel brauchbar doku gefunden!

                    Daher noch etwas schwach!

                    Kommentar


                    • #11
                      http://www.php.net/manual/de

                      http://dev.mysql.com/doc/mysql/de/index.html
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        ja bin schon dabei danke

                        was haltest du von dem "Offizellen Handbuch" aus dem mitp verlag?
                        kann das was?

                        habe lieber bücher als online doku und sucher daher was?

                        Kommentar


                        • #13
                          Hier schon mal rein geschaut:
                          http://www.php-resource.de/forum/for...ne=&forumid=48
                          *winks*
                          Gilbert
                          ------------------------------------------------
                          Hilfe für eine Vielzahl von Problemen!!!
                          http://www.1st-rootserver.de/

                          Kommentar

                          Lädt...
                          X