多值插入mysql数据库表

时间:2014-03-22 00:31:57

标签: php mysql sql database

我会用图像来解释我想要完成的事情。我试图在任何顺序的框中输入值。

假设您的网站名称是您的Website.com

该网站允许您输入值,以便将它们汇总用于数据分析,如下图所示。

enter image description here

您的 PHP 代码如下所示: -

    <input  type="number"  name="Box1"></input>
    <input  type="number"  name="Box2"></input>
    <input  type="number"  name="Box3"></input>
    <input  type="number"  name="Box4"></input>

进一步说你的数据库中的MySQL表看起来像下图。

enter image description here

如上所示,数据库中的名称为1,2,3 ... 8。

假设对于示例,数字4,5,6,1会输入到您网站上的框中,如下图所示:

enter image description here

我们还假设输入数字无关紧要。 结果应该类似于数据库表中的下图

enter image description here

让我们为示例 8,5,2,7添加更多数字,它们的输入方式无关紧要 enter image description here

添加数字后,您的MySQL数据库表应如下所示

enter image description here

这就是我想要实现的目标。让表自动递增输入的值也可能很好,但我认为它可能更难。

如果表格可以自动递增,则MYSQL表格将如下图所示

enter image description here

我需要帮助知道如何实现任何最终结果。任何帮助将不胜感激。

对不起,我只是想解释一下我想做的基本事情。

1 个答案:

答案 0 :(得分:1)

我建议使用不同的数据库布局,以便更容易地增加允许值,更容易插入和更容易选择:

CREATE TABLE results (
  number INT(10) NOT NULL PRIMARY KEY,
  amount INT(10) NOT NULL DEFAULT 1
);

您可以使用特定于MySQL的ON DUPLICATE KEY UPDATE

轻松插入和更新金额
INSERT INTO results (number)
VALUES (1), (3), (3), (7)
ON DUPLICATE KEY UPDATE amount = amount + 1;

在SQLFiddle上演示:http://sqlfiddle.com/#!2/382cd7/1