php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 21-02-2010, 16:41
Pebbles123
 Registrierter Benutzer
Links : Onlinestatus : Pebbles123 ist offline
Registriert seit: Nov 2009
Beiträge: 13
Pebbles123 befindet sich auf einem aufstrebenden Ast
Standard Problem mit Abfrage erstellung

Hi

ich suche gerade einen Weg wie ich eine Berechnung am schnellsten mit einer SQL Abfrage lösen kann statt einer langsamen Berechnung...

Ich habe 3 Tabellen:
1. Tabelle beinhaltet die Tiere mit Tierart und BesitzerIndex
2. Tabelle behinhaltet die Tierarten und was diese pro Tag fressen (in kg)
3. Tabelle behinaltet die verschiedenen Futtersorten je Tierart mit unterschiedlichen Futtermengen und deren Preis.

bsp:
Tabelle 1:
User=1, Tierart 1
User=1, Tierart 1
User=1, Tierart 2
User=1, Tierart 3
User=1, Tierart 3

Tabelle 2:
Tierart1, 5kg
Tierart2, 2kg
Tierart3, 10kg

Tabelle 1
Futter1, Tierart1, 5kg, 4EUR
Futter2, Tierart1, 10kg, 9EUR
Futter3, Tierart2, 2kg, 2EUR
Futter4, Tierart2, 4kg, 5EUR
Futter5, Tierart3, 10kg, 9EUR

Jetzt möchte ich ausrechnen was User1 pro Tag an Futterkosten hat. Spontan würde ich jetzt eine Schleife mache über alle Tiere des Users 1, pro Tier mir raussuchen was es an Futter pro Tag braucht, dann was das jeweilige Futter kostet und das dann zusammenaddieren. Aber gibts hierfür nicht eine SQL Abfrage die das schon vielleicht für mich tut oder eventuell mit einige Schritte zusammenfassen kann? Bisher hab ich nur mit Abfragen auf eine Tabelle gearbeitet und keine Erfahrung mit übergreifenden Abfragen...
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 21-02-2010, 16:54
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

schau dir mal im MySQL-Handbuch die JOIN Syntax an und die Beispiele dazu. Dann bekommst du sicher eine Idee, wie du das für deine Tabellen anwenden kannst.

Gruß,

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #3 (permalink)  
Alt 21-02-2010, 16:57
Pebbles123
 Registrierter Benutzer
Links : Onlinestatus : Pebbles123 ist offline
Registriert seit: Nov 2009
Beiträge: 13
Pebbles123 befindet sich auf einem aufstrebenden Ast
Standard

Danke für den Tip, gibts auch was das er automatisch sachen zusammenzählt und addiert? zb User hat 3 Katzen und dauers ergibt sich 3x3EUR kosten?
Mit Zitat antworten
  #4 (permalink)  
Alt 21-02-2010, 17:00
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Ja, man kann mit der SQL auch rechnen.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #5 (permalink)  
Alt 21-02-2010, 18:41
Pebbles123
 Registrierter Benutzer
Links : Onlinestatus : Pebbles123 ist offline
Registriert seit: Nov 2009
Beiträge: 13
Pebbles123 befindet sich auf einem aufstrebenden Ast
Standard

kann mir einer einen kurzen Tip geben wie ich die Abfrage aufbauen muss, ich hab jetzt einige Varianten durch, aber ich schaff irgendwie immer nur 2 Tabellen miteinander zu verknüpfen und wenn ich versuch die 3. mit reinzubringen krieg ich nen Knoten im Gehirn. Ich bin schonmal soweit, daß er mir die Tieranzahl für einen User je Tierart berechnet:

SELECT UserIndex, AnimalTyp, COUNT(AnimalTyp) anzahl FROM useranimals WHERE UserIndex=1 GROUP BY AnimalTyp

Wie bekomme ich jetzt da die dazugehörige Futtersorte und dessn preis mit rein? Oder geht das nicht? Es muss ja jetzt in der einen Tabelle geschaut werden wieviel kg das Tier benötigt und dann in der 3. Tabelle die dazugehörige Futterart mit Preis ausgewählt werden... mir würde es auch reichen wenn erstmal nur das in der Tabelle rauskäme, die letztliche Berechnung Anzahl*Preis kann ich dann ja auch in einer Schleife machen...

Geändert von Pebbles123 (21-02-2010 um 18:45 Uhr)
Mit Zitat antworten
  #6 (permalink)  
Alt 21-02-2010, 20:14
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Was ich nicht verstehe: Warum steht die Menge in Tabelle 2 und Tabelle 3? Ich würde es ja so machen:

Tabelle Tierart: ID, Name, Futtereinheiten (pro Tag)
Tabelle Halter: ID, Name
Tabelle Futter: ID, Name, Tierart-ID, Preis (pro Futtereinheit in Euro)
Tabelle Haltung: ID, Halter-ID, Tierart-ID, Anzahl (Tiere)

Wenn ich jetzt wissen will, wieviel ein Halter pro Tag an Futterkosten ausgeben muss, könnte ich es so schreiben:

Code:
select
	`Halter`.`Name`,
	`Tierart`.`Name`,
	`Futter`.`Name`,
	`Futter`.`Preis` * `Tierart`.`Futtereinheiten` * `Haltung`.`Anzahl` as `PreisProTag`
from `Haltung`
join `Halter` on `Halter`.`ID` = `Haltung`.`HalterID`
join `Tierart` on `Tierart`.`ID` = `Haltung`.`TierartID`
join `Futter` on `Futter`.`TierartID` = `Tierart`.`ID`
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem mit Erstellung des Gästebuchs (Anfänger) fre4k PHP Developer Forum 13 07-08-2005 22:02
Problem bei der Erstellung einer Tabelle pascaluhlmann SQL / Datenbanken 11 18-05-2005 22:34
Erstellung einer Tabelle mit Abfrage seppwert Projekthilfe 17 14-01-2005 15:28
Problem mit Funktion zur Erstellung einer select-Liste daFish PHP Developer Forum 7 09-03-2004 20:07
Problem mit Menue-Erstellung aus DB Phil98 SQL / Datenbanken 4 12-10-2003 12:46

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Projektmanagement Damals und Heute
Projektmanagement Damals und HeuteWerfen Sie einen Blick auf das, was sich verändert hat, und entdecken Sie, wo die Zukunft dieses Gebietes hinsteuert.

18.01.2021 | Berni

Arbeitsmanagement-Tools
Arbeitsmanagement-ToolsWarum jedes Team Arbeitsmanagement-Tools benötigt. Man schätzt, dass 25% eines durchschnittlichen Mitarbeiter-Tages durch ineffiziente Arbeit vergeudet werden.

11.12.2020 | Berni


 

Aktuelle PHP Scripte

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

21.10.2020 Berni | Kategorie: PHP/ Anzeigenmarkt
Sendeplan Script inkl. Wunsch- und Grußbox + Kick-System + Bewerbungssystem

Das professionelle Sendeplan PHP Script inkl. Wunsch- und Grußbox + Kick-System für dein Webradio. Der übersichtliche Sendeplan bietet deinen Moderatoren und Zuhörern die perfekte Übersicht der aktuellen Shows! Du kannst nicht nur Sendungen eintragen, s

20.10.2020 drcomputer | Kategorie: PHP/ Web Radio
Newsmanager 2

Der Newsmanager 2 ist sehr Vielfältig und kann News schreiben, Newsletter versenden und RSS Feeds in einem erzeugen.

20.10.2020 Stephan_1972 | Kategorie: PHP/ News
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:29 Uhr.