Rimango perplesso.

Seguendo questa procedura ho il comportamento che mi aspetterei

Codice PHP:
$query1 mysql_query("set @cas = (select group_concat(id_domanda order by rand()) from domande)") or die(mysql_error());
$query2 mysql_query("select @cas"); // se aggiungo questa query funziona, senza no.
$row mysql_fetch_row($query2);
$query3 mysql_query("select * from risposte order by field(id_domanda,$row[0])");

while (
$row mysql_fetch_assoc($query3)) {
  echo 
$row['id_risposta']. ' '$row['id_domanda'].' '.$row['risposta'].'
'
;

ma non capisco la ragione per la quale debba aggiungere la seconda query e non possa usare direttamente la mia variabile.