MYSQL从另一个表填充一个表

时间:2012-07-10 04:52:36

标签: mysql

我有两张桌子

  1. question_bank(ques_id,问题,回答,A,B,C,d)
  2. random_question_bank(USER_ID,Q1,Q2,............,Q20)
  3. 我填写了用户的user_id。

    现在,我想为每个user_id用ques_id(随机)填充q1,q2,....... q20。

    请帮助代码。

    $result_user = mysql_query("INSERT INTO random_question_bank(user_id) VALUES('".$_SESSION['user_id']."')");
    if($result_user)
        echo('<br />user name inserted<br />');
    $result = mysql_query("SELECT * FROM question_bank ORDER BY RAND() LIMIT 20");
    $q = array();
    $i = 1;
    while($row = mysql_fetch_assoc($result))
    {
        $sql = "INSERT INTO random_question_bank(q.'$i') 
             VALUES('".$row['ques_id']."')
            WHERE user_id ='".$_SESSION['user_id']."'";
        $result_ques = mysql_query($sql);
        $i++;
        if($result_ques)
             echo('<br />q'.$i.'<br />');
        $i++;
    }
    

1 个答案:

答案 0 :(得分:0)

请尝试以下代码:

$result_user = mysql_query("INSERT INTO random_question_bank(user_id) VALUES('".$_SESSION['user_id']."')");
if($result_user)
echo('<br />user name inserted<br />');
$result = mysql_query("SELECT * FROM question_bank ORDER BY RAND() LIMIT 20");    
$i = 1;
while($row = mysql_fetch_assoc($result))
{
    $sql = "Update random_question_bank set q.'$i' 
     ='".$row['ques_id']."' WHERE user_id ='".$_SESSION['user_id']."'";
$result_ques = mysql_query($sql);
$i++;
if($result_ques)
     echo('<br />q'.$i.'<br />');
$i++;
}

据我所知,你不能在where语句中使用insert语句。希望它对你有用。