Schnittmenge 2er Datenbanken:Relationenalgebra?

1 Antwort

Wenn du jetzt die 4x4 Tabelle hast, kannst du als nächstes mit der Selektions-Funktion die Einträge rausfiltern, die ungleich sind.

Zum Beispiel sigma_[R1.Spalte1 = R2.Spalte1](deine 4x4-Tabelle) zeigt dir dann nur die Einträge, bei denen die Werte jeweils gleich sind. (sigma ist hierbei meine Selektions-Funktion, in den _[] steht die Bedingung und in der Klammer dahinter der Funktionsparameter - in diesem Fall das kartes. Produkt)

Wie finde ich in dieser Tabelle die Kriterien?

Huhu alle - jetzt bin ich mal sehr gespannt, ob jemand helfen kann:

Stell Dir vor, Du hast in einer Exceltabelle 80 versch. Produkte vertikal untereinander.

Jedes Produkt hat Eigenschaften, die in Spalten rechts daneben jeweils festgehalten sind. Jede dieser Spalten beschreibt, ob das Produkt die Eigenschaft hat oder nicht. Also vertikal jeweils ja/nein. Dies gibt an, ob diese Eigenschaft zutrifft.

Nun kann es ja sein, dass je nach Anforderungen des Kunden mehr als nur ein Produkt seine Anforderungen erfüllt.

Du möchtest herausfinden, bei welchen Kombinationen von Anforderungen mehr als ein Produkt in Frage kommt.

Beispiel: aus der Tabelle: Hat ein Kunde an die Maschine die Kriterien, dass sie Bohren und Schrauben können soll, kommen drei Maschinen in Frage. (1,5 und 10)

Wie findet man alle weiteren entsprechenden Kombinationen raus bei denen mehrere Maschinen in Frage kommen, ohne alle erdenklichen Möglichkeiten manuell durchzugehen?

Wie gesagt, es geht nicht darum das richtige Produkt zu finden.

Ich will wissen, welche Maschinen machen sich untereinander Konkurrenz, weil sie beide bestimmte Anforderungskombinationen erfüllen.

Die Tabelle ist natürlich nur exemplarisch. Die echte Tabelle ist deutlich komplexer. (Mehr Produkte und mehr Eigenschaften)

Bin sehr gespannt auf Vorschläge. Danke schonmal!

...zur Frage

SQL Tabelle "Bestellung" - eine Bestellung mit mehreren Produkten, wie schreiben?

Ich möchte eine Tabelle Bestellung erstellen in der ein Kunde mehrere Produkte bestellen kann, dh es gibt eine Bestell-Nr hinter der liegen ein oder mehrere Produkte. Wie kann ich das schreiben in SQL?

So könnte der Kunde nur ein Produkt kaufen:

CREATE TABLE Bestellung {

Bestell-Nr INT PRIMARY KEY NOT NULL AUTO_INCREMENT,

Produkt-Nr INT,

Anzahl INT(2) NOT NULL,

Bestelldatum DATE,

Empfangsdatum DATE,

  FOREIGN KEY (Produkt-Nr)

   REFERENCES Produkt(Produkt-Nr)

);

...zur Frage

Session id als Identifizierungsmerkmal eines Nutzers speichern sinnvoll?

Guten Tag =)

Ich habe eine Frage! Und zwar programmiere ich gerade ein eigenes Shop CMS und stehe vor einer Frage die ich mir stelle:

Ich habe eine Tabelle namens "Kunden" und eine Tabelle namens "Warenkorb" In der Tabelle Kunden sind die Bestelldaten des Käufers gespeichert (namen, adresse und co) und in Warenkorb jedes Produkt das von den Kunden in einen Warenkorb gelegt wurde (BEVOR der Kunde seine Daten in einem Formular eingibt und er in der Tabelle "Kunden" angelegt wird). Die Zuteilung welches Produkt zu welchen Warenkorb gehört erfolgt dabei über ein Feld "sid" in dem die Session id des Nutzers steht. (Da zu dieser Zeit ja noch keine Kunden id verfügbar, wenn ein unregistrierter Kunde ein paar Produkte in den Warenkorb legt)

Um diese 2 Tabellen zu verknüpfen wollte ich jetzt einfach bei Kunden ebenfalls ein Feld mit "sid" anlegen in der die SID des Nutzers gespeichert ist. Somit kann man die Produkte in der Warenkorb tabelle den einzelnen Bestellungen bzw Kunden zuordnen!

Jetzt die Frage die mir Kopfzerbrechen bereitet:

Ich weis das die SID eine ziemlich krasse "zufallszahl" ist und es so gut wie unmöglich ist, dass 2 Leute die gleiche Session id haben. SOFERN sie gleichzeitig auf dem Server und beide aktiv sind. Speicher ich jetzt aber die SID als erkennung für den Kunden und die Bestellung in der Tabelle und es würde theoretisch passieren das ein anderer Kunde einen Tag später die gleiche Zufallszahl bekommt, ist das ganze System nutzlos.

Wie seht ihr die chancen dass so etwas passiert? Ich kann mir natürlich auch eine Zahlenkombination überlegen die einmalig sein sollte (zb. eine Kombination aus Datum, Kundenid oder so...) aber mich würde interessieren ob es auch über diesen einfacheren Weg geht!

VIelen Dank für eure Antworten!

Liebe Grüße und einen schönen Abend noch!

...zur Frage

Excel: Wie stelle ich die Formel auf: Teuerstes Produkt?

Hallo,

ich habe folgende Screenshots gemacht: Tabelle 1 und Tabelle 2.

Tabelle 1 enthält die Weinsorte und die Anzahl der verkauften Flaschen und deren preis.

Tabelle 2 enthält die Literangaben der Falschen.

Die Aufgabenstellung lautet:

Gegeben sind wieder Verkaufswerte des Weinhändlers und zusätzlich eine Liste, welcher Wein / welche Weinflasche wieviel Liter Inhalt hat. Sie sollen insgesamt drei Pivot-Tabellen erstellen: Eine Pivot-Tabelle, in der Sie leicht ablesen können, welcher Kunde vom teuersten Wein am meisten Liter gesamt gekauft hat. Notieren Sie sich Kunde und Literzahl.

Berechnen Sie zeitlich vor der Erstellung der Pivot-Tabellen alle zusätzlich nötigen Datenfelder. Mittels bedingter Formatierung können Sie auch sehr einfach den jeweils maximalsten Wert ermitteln, fügen Sie also bedingte Formatierungen ein!

Kann mir hier eventuell jemand helfen? Ich komme nicht weiter.

Vielen Dank.

Marc

...zur Frage

SQL SELECT Berechnung eines Gesammtpreises

Hi,

ich habe ein Problem mit einem SQL SELECT Befehl. Ich glaube ich habe einen Denkfehler und brauche eure Hilfe :)

Problem:

Tabelle Bestellungen 
BestellungsNr (PK), KundenNr
2001              , 1001 
2002              , 1002

Tabelle Bestellpositionen
BestellungsNr (PK), ProduktNr(PK), Menge
2001              , 10001        , 2
2001              , 10021        , 1
2002              , 10001        , 1
2002              , 10021        , 2

Tabelle Produkte
ProduktNr(PK), Preis
10001        , 5.1
10021        , 7.99

Nun möchte ich den Gesamtwert der Bestellung ausgeben. Ich habe nun über INNER JOIN die Tabellen verbunden. Weiß aber nun nicht wie ich das ganze berechnen soll.

Menge * Preis ist Ok. Aber wie bring nun noch die ProduktNr mit rein, damit man weiß welche Menge * Preis genommen werden soll und wie werden dann die anderen Produkt Preise bei einer Bestellung addiert?

Ich hoffe das ist verständlich. Ich möchte also quasi nur die BestellungsNr und den Gesamtwert ausgeben. Der Gesamtwert pro Bestellung soll berechnet werden.

Mein bisheriger Ansatz:

SELECT BestellungsNr, SUM(Gesamtwert) FROM (SELECT (Preis * Menge) AS Gesamtwert FROM Bestellungen 
INNER JOIN Bestellpositionen ON (Bestellungen.BestellungsNr = Bestellpositionen.BestellungsNr)
INNER JOIN Produkte ON (Bestellpositionen.ProduktNr = Produkte.ProduktNr));

Hoffentlich kann mir jemand helfen :)

Gruß

...zur Frage

Was möchtest Du wissen?