我非常想显示 NBA 赛季的轮数。我在 mysql 中有一个数据库,其中存储了所有回合。有 2 个不同的表无法连接。其中一个表包含当前回合,这几乎是当前正在发生的回合,另一个表包含所有回合。当用户选择他们想要查看的轮次结果时,他们将单击选择列表并进入该轮次。
我想要的是,我希望能够做到这一点,用户只能查看当前或过去的回合,因为不可能查看 future 的结果。由于它们都位于不同的表上,我想通过从查询中获取当前回合
$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";
?>
有什么办法可以解决这个问题吗?
最佳答案
使用子查询尝试此操作。
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
结束时;这是为了确保只返回一个值,因为您尝试使用 <=
进行比较
关于php - 使用一个 SQL 查询的数据来获得另一个 SQL 查询的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23939571/