W tej chwili mam to mniej wiecej w ten sposob zrobione:
Ale wystepuje jeden problem - druie i trzecie zapytanie zwraca rekordy, ktore byly juz zwrocene we wczesniejszym zapytaniu. Wiec powtarzaja mi sie te samy artykuly.
SELECT * FROM artykul WHERE ID_marka=1 ORDER BY RAND() LIMIT 10 //jezeli zapytanie zwrocilo mniej niz 10 rekordow TO wykonuje nastepne zapytanie (LIMIT bedzie pomniejszony i ilosc rekordow z pierwszego zapytania) SELECT * FROM artykul WHERE ID_model=1 ORDER BY RAND() LIMIT 10 //jezeli dwa poprzednie zapytania zwrocily mniej niz 10 rekordow TO wykonuje nastepne zapytanie (LIMIT bedzie pomniejszony i ilosc rekordow z poprzednich zapytan) SELECT * FROM artykul WHERE ID_typ=1 ORDER BY RAND() LIMIT 10
Moglbym to zrobic w ten sposob:
ale wtedy mam pomieszane wszystkie artykuly. A chcialbym te pozycje piorytetowo wyswietlic tak jak w pierwszym przykladzie gdzie sa trzy zapytania. U samej góry te ID_marka=1 potem ID_model=1 i na koncu ID_typ=1
SELECT * FROM artykul WHERE((ID_marka=1)OR(ID_model=1)OR(ID_typ=1)) ORDER BY RAND() LIMIT 10