Cytat
select t1.id_pytania, t1.pytanie, t2.odpowiedz, t2.poprawnosc
from pytania t1, odpowiedzi t2
where t1.id_pytania=t2.id_odpowiedzi
and t1.id_pytania in
(select t3.id_pytania from pytania t3 order by rand() limit 3);
from pytania t1, odpowiedzi t2
where t1.id_pytania=t2.id_odpowiedzi
and t1.id_pytania in
(select t3.id_pytania from pytania t3 order by rand() limit 3);
Błąd wykonania:
Cytat
ERROR 1064: Something is wrong in your syntax obok 'select t3.id_pytania from pytania t3 order by rand() limit 3)' w linii 1
Konstrukcja pytania zagnieżdżonego jest prawidłowa więc skąd ten błąd?
Ps.
Chciałem uzyskać tablicę odpowiedzi zawierającą: id_pytania, pytanie, odpowiedź, poprawność (odpowiedzi). Istnieje kilka odpowiedzi na jedno pytanie. Id_pytania ma być losowe (z tym, że do każdego wylosowanego pytania muszą zostać wybrane wszystkie odpowiedzi jedna po drugiej). Pole id_pytania jest kluczem głównym, id_odpowiedzi kluczem obcym (odpowiadającym kluczowi id_pytania):
np. id_pytania pytanie odpowiedz poprawnosc
2 co2 nic1 0
2 co2 nic3 0
2 co2 nic2 1
4 co4 odp2 1
4 co4 odp3 1
4 co4 odp1 1
Z góry dzięki za podpowiedź.