2016-03-21 4 views
1

die Verwendung Lassen Sie sagen, ein Tisch Anruf ITEM ist und es enthält 3 Attribute (Name, ID, Preis):ohne Konjunktionen unter den Bedingungen der Auswahl Betreiber

name  id  price 

Apple  1  3 
Orange 1  3 
Banana 2  4 
Cherry 3  5 
Mango  1  3 

Wie soll ich eine Abfrage schreiben eine Konstanten Auswahl zu verwenden, Betreiber, um jene Artikel auszuwählen, die gleiche Preise und gleiche IDs haben? Das erste, was mir in den Sinn kam, ist, einen Umbenennungsoperator zu verwenden, um ID in ID 'und Preis in Preis' umzubenennen, dann Union mit der ITEM Tabelle, aber da ich 2 Tupel auswählen muss (Preis = Preis '& ID = ID ') aus der Tabelle, wie kann ich sie auswählen, ohne den Konjunktionsoperator in der relationalen Algebra zu verwenden?

Vielen Dank.

Antwort

1

Ich bin mir nicht ganz sicher, aber für mich wäre es so etwas wie dies in relationalen Kalkül sein:

enter image description here

und dann in SQL:

SELECT name FROM ITEM i WHERE 
    EXISTS ITEM u 
     AND u.name != i.name 
     AND u.price=i.price 
     AND u.id = i.id 

Aber noch, ich denke, Ihre Annahme ist richtig, Sie können es immer noch tun, indem Sie umbenennen. Ich glaube, es ist ein bisschen länger als das, was ich oben gemacht habe.