PHP或MySQL中的夹具生成器

时间:2013-09-03 08:31:30

标签: php mysql

我正在尝试为体育网站制作灯具。我有一个名为Members的表,相关列为member_id和league_id。 league_id将从上一页的表单作为变量$ leagueid传递。

我正在使用......

取出与该联盟ID相关的所有会员ID
$result = mysql_query("SELECT member_id FROM Members WHERE league_id = '$leagueid'")

我现在需要为所有这些成员ID生成灯具,然后将这些数据插入MySQL表'灯具'。该表中的每一行数据都需要包括: -

player1 - 第一个玩家的member_id
player2 - 第二个玩家的member_id
week - 整数,显示比赛将在哪一周进行 league_id

但是,还有一些特殊情况需要应用。

  1. 每隔3周需要保持免费(即3,6,9,12周等)。这几周不能安排比赛

  2. 需要一个选项(将从上一页的表单中选择并传递为名为$ double的复选框变量),这将使匹配加倍。这意味着在生成一整套灯具后,您需要获取生成的列表,交换ID为播放器1和2,并将它们全部复制。所以1轮灯具看起来像这样......

  3. 第1周

    1 vs 2
    3 vs 4

    第2周

    1 vs 3
    2 vs 4

    第3周

    1 vs 4
    2 vs 3

    然后你会交换ID并添加另一套......

    第4周

    2 vs 1
    4 vs 3

    第5周

    3 vs 1
    4 vs 2

    第6周

    4 vs 1
    3 vs 2

    我正在寻找的是一些能够生成所有这些装置的代码,同时牢记我列出的所有特殊条件。

    我知道这在PHP中是可能的,但我也认为我可以使用一个SQL查询来代替,这可能会更清晰。谁能帮我吗??谢谢!

    P.S。我知道我使用的是mysql而不是mysqli。我目前正在尝试转移到mysqli,但我遇到了一些问题,我已经发布了一个单独的问题,我还没有得到正确答案。

1 个答案:

答案 0 :(得分:1)

SELECT * FROM ints;
+---+
| i |
+---+
| 0 |
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
+---+

SELECT * FROM ints WHERE MOD(i,3) > 0;
+---+
| i |
+---+
| 1 |
| 2 |
| 4 |
| 5 |
| 7 |
| 8 |
+---+

第二部分只是

INSERT INTO my_table SELECT week_id+3, column_2, column_1 FROM my_table;