规范化表后,我可以从一个查询中获得相同的结果

时间:2012-02-18 04:20:39

标签: php mysql sql database

我刚刚拆开了一个名为提交的表,用于为用户提出的每个问题保留一列,直到我意识到如果用户不断提出新问题,此表可能会变为无穷大。我已经对表格进行了规范化,但现在我正在努力获得与之前相同的结果。因为我现在有很多很多:

CREATE TABLE Submissions ( 
submission_id INT(11) NOT NULL, 
);

CREATE TABLE Questions ( 
question_id INT(11) NOT NULL, 
);

CREATE TABLE Submission_questions ( 
question_id INT(11) NOT NULL,
submission_id INT(11) NOT NULL,
submit_quest_id INT(11) NOT NULL, 
);

过去可以通过从提交中运行SELECT *的单个查询然后列出我想要的列来提取我需要的所有问题。我的问题是,是否仍然可以运行一个查询并仍然可以获得我需要的问题的答案?我有submission_id和question_id,所以我假设它可能,但我环顾四周,并没有看到一个解决这个问题的查询,我读的越多,我就越容易绕过轴。

1 个答案:

答案 0 :(得分:0)

  

以前可以通过跑步来提取我需要的所有问题   从提交中单个查询SELECT *然后列出   我想要的专栏。

那些专栏里有什么?每栏都有一个单独的问题?

  

我的旧查询是:

SELECT * 
FROM manufacturers 
JOIN submissions on manufacturers.manufacturer_id=submissions.manufacturer_id 
JOIN products on products.product_id=submissions.product_id 
JOIN product_group on submissions.category=product_group.id 
WHERE submissions.approval_status='2' 
GROUP BY product_group.group,manufacturers.man_name", 
         "submission_id", 
         "date, man_name, group, feedback"

嗯,这对我来说看起来不像SELECT * FROM Submissions。看起来它根本不会运行。

编辑您的问题,粘贴(不要输入)您的DDL语句。 (您的CREATE TABLE语句。)包含一些示例数据作为SQL INSERT语句。确保在旧的“SELECT * FROM Submissions”查询中明确了您所选择的内容。然后我们可以再做一次。