2016-12-20 4 views
1

Ich habe zwei Tabellen. Produkte und Produkte-Sub. was ich will, ist, alle verfügbaren Farben für jedes Produkt und ein Bild dafür zu zeigen. Somysql Grenze für Fremdschlüssel wählen

meine Produkttabelle enthält

id, Namen, Beschreibung

meine Produkt-sub-Tabelle enthält

id, parentID, Farbe, pic

was i will alle wählen die Farben und die Bilder eines Produktes und zeigen es auf der Seite. aber ich möchte nicht alle Produkte auf der gleichen Seite zeigen.

das ist meine aktuelle Abfrage, ich möchte 50 Unique am parentid.

+1

Was ist Ihre Frage? – shmosel

+0

Wie zu begrenzen einzigartige Fremdschlüssel ... wie ich möchte alle Farben eines Produkts, aber ich möchte 50 einzigartige Produkte –

+0

Sie können auf eine Unterabfrage mit einem Limit beitreten: 'JOIN (SELECT * FROM Produkte LIMIT 50) p' – shmosel

Antwort

2

Eine Lösung besteht darin, in der übergeordneten Tabelle eine Unterabfrage mit einer LIMIT, z.

... JOIN (SELECT * FROM products LIMIT 50) p ... 
1

Wenn Sie 50 Produkte möchten, verwenden Sie dann eine Unterabfrage:

select p.name, s.color, s.pic, p.id 
from products_sub s inner join 
    (select p.* 
     from products p 
     limit 50 
    ) p 
    on p.id = s.parentID; 

Dies setzt natürlich voraus, dass alle Produkte mindestens eine Unter haben.

+0

Sie haben auch die richtige Antwort. aber Shmosel hat es mir zuerst gesagt. keine harten Gefühle, Bruder. Danke übrigens –