我想要显示NBA赛季的轮数。我在mysql中有一个数据库,其中存储了所有轮次。有2个不同的表,不能加入。其中一个表包含CURRENT ROUND,它几乎就是现在发生的循环,另一个包含所有轮次。当用户选择他们想要看到的结果时,他们将点击选择列表并进入该轮。
我想要的是,我希望能够做到这一点,用户只能查看当前或过去的回合,因为查看未来结果是不可能的。由于它们都在不同的表格中,我想从查询中获取当前轮次
$curr = mysql_query("SELECT current
FROM seasons
WHERE year='2014'");
$result = mysql_query($curr);
while($row = mysql_fetch_array($result)){
$sql = mysql_query("SELECT allrounds
FROM fixtures
WHERE allrounds<= '$row['current']'");}
并且有点使用它作为另一个查询的变量,这似乎不起作用。这是我的选择清单。
Select a round:
<?php
echo "<select name = 'rounds' id = 'rounds'>\n";
echo "<option value=>Select...</option>\n";
while ($data = mysql_fetch_array($sql, MYSQL_ASSOC))
{echo "<option value='{$data['allrounds']}'>{$data['allrounds']}</option>\n";}
echo "</select>\n";
?>
有什么方法可以解决这个问题吗?
答案 0 :(得分:2)
使用子查询尝试此操作。
SELECT allrounds
FROM fixtures
WHERE allrounds in (SELECT current
FROM seasons
WHERE year='2014')
根据你的帖子
SELECT allrounds
FROM fixtures
WHERE allrounds <= (SELECT current
FROM seasons
WHERE year='2014'
ORDER BY current LIMIT 1)
结尾见LIMIT 1
;这是为了确保只有一个值被返回,因为您尝试使用<=
进行比较
答案 1 :(得分:0)
我不知道PHP,但你似乎错误地混合了PHP和MySQL代码。 您可能对Subqueries感兴趣。请检查此问题:MySQL Nested Select Query?
希望我能帮到你。 :)