gpt4 book ai didi

Mysql 根据两个条件对表进行排序

转载 作者:行者123 更新时间:2023-11-29 21:13:57 26 4
gpt4 key购买 nike

我在如何根据两个标准订购 table 时遇到问题。我的 table 上游戏有开始和结束时间。所以我想在即将开始的顶级比赛中展示。这很简单,我们可以按时间升序进行排序。但我希望比赛结束时能跌至谷底。简单架构:

  1. 第一场比赛开始于 10:00 结束于 12:00
  2. game2 start_at 14:00 结束于 16:00
  3. game3 start_at 20:00 结束于 22:00

如果现在是 16:00。查询结果显示

  1. 游戏1
  2. 游戏2
  3. 游戏3

我不想这样,因为 game1 于 12:00 结束,现在是 16:00。如果现在是 16:00,我希望结果是这样的

  1. 游戏2
  2. 游戏3
  3. 游戏1

最佳答案

假设您的列是:

 game | start_time | end_time
------|------------|-----------
g1 | 10:00 | 12:00
g2 | 14:00 | 16:00
g3 | 20:00 | 22:00

你可以这样做:

SELECT game FROM
(
SELECT game, start_time, end_time,
(CASE end_time
WHEN < NOW() THEN 1
ELSE 0
END) AS game_over
FROM GameTimes
ORDER BY start_time
)
ORDER BY game_over

因为您没有提供有关表格的足够信息(即时间实际采用的格式),所以我不能保证这会起作用 - 特别是与 NOW() 的比较 - 但它至少让您了解正确的轨道。

关于Mysql 根据两个条件对表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36118047/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com