各位下午好,我正在尝试制作一个页面,我可以在这里查看我今天做过的哪些老板。我有两个表(老板表和老板时间表)。现在,我需要显示所有老板,但对于每个老板,我只想显示老板将要产卵的最近时间。

到目前为止,选择看起来像这样:

$timePlus = strtotime($currentTime) + 60*60*2.2;
$timePlusForm = date("H:i:s", $timePlus);
$userNametoLower = strtolower($userName);
$userTableName = "".$userNametoLower."_bosses";
$currentTime = date("H:i:s", time());
"SELECT `bossTime`.`ID`, `bossTime`.`bossID`, `bossTime`.`time`, `$userTableName`.`ID`, `$userTableName`.`name`,
                  `$userTableName`.`zone`, `$userTableName`.`map`, `$userTableName`.`waypointCode`, `$userTableName`.`bossDone`
                  FROM `bossTime` LEFT JOIN `$userTableName` ON `$userTableName`.`ID` = `bossTime`.`bossID`
                  WHERE `bossTime`.`time` BETWEEN '$currentTime' AND '$timePlusForm'
                  GROUP BY `bossTime`.`bossID`
                  ORDER BY `bossTime`.`time` ASC";


问题在于此选择不会从时间表中选择下一个最接近的值。我也尝试过BETWEEN,但是它也没有用(有些老板的正确时间最近,而另一些老板的时间最近了)。任何解决该问题的想法都值得欢迎。

最佳答案

我删除了GROUP BY并将条件更改为WHERE bossTime.time> ='$ currentTime'和bossTime.time <='$ timePlusForm',由于某种原因它可以工作

09-30 10:54