我正在尝试创建一个名为'quiz'的新表,并将现有问题表中的指定行插入到测验表中。我希望能够选择要包含在给定测验中的哪些问题,因此IN(13,14,15)。我还想动态创建一个新表而不是使用预先存在的表。我正在尝试使用下面的查询,但它不起作用。
CREATE TABLE `quiz`
(
ID INT(11),
question MEDIUMTEXT,
output MEDIUMTEXT,
functionname TINYTEXT,
p_args TINYTEXT,
r_args TINYTEXT,
hint MEDIUMTEXT,
score INT(255),
PRIMARY KEY (ID)
);
SELECT from * `questions` where id IN (13, 14, 15);
这就是我的问题表: http://i.stack.imgur.com/OULZn.jpg
我已经在那里待了2个小时,我尝试过很多东西,但是它不起作用。我开始认为这不是正确的方法。
答案 0 :(得分:3)
只要您的所有列都匹配
SELECT * FROM `questions` WHERE ID IN (13, 14, 15)
应该解决它
答案 1 :(得分:1)
您的选择查询
SELECT FROM * `questions` WHERE ID IN (13, 14, 15)
它的错误
使用
SELECT * FROM `questions` WHERE ID IN (13, 14, 15)
答案 2 :(得分:1)
您的查询
$sql = "CREATE TABLE `quiz`(ID int(11), question mediumtext, output mediumtext, functionname tinytext, p_args tinytext, r_args tinytext, hint mediumtext, score int(255), PRIMARY KEY (ID)) SELECT FROM * `questions` WHERE ID IN (13, 14, 15)"
改为使用
$sql = "CREATE TABLE `quiz`(ID int(11), question mediumtext, output mediumtext, functionname tinytext, p_args tinytext, r_args tinytext, hint mediumtext, score int(255), PRIMARY KEY (ID)) SELECT * from `questions`WHERE ID IN (13, 14, 15)"
答案 3 :(得分:-1)
如果您完全访问MySQL服务器,只需转储表,通过notepad ++编辑转储文件。通过编辑,您将更改表的名称,并删除您不喜欢的行。午餐后编辑的文件和瞧。