我的MySQL数据库中有一个表,如下所示
banner
--------
id : bigint(20)
name : varchar(75)
type : set('news','event')
link : bigint(20)
when : int(10)
我想要做的是我希望能够回忆起所有具有“新闻”类型的行
但我只想回忆所有“事件”类型的行,其中'when>时间()'
或者基本上是将来发生的任何事件
RECAP:
我正在使用PHP作为脚本语言运行SQL查询。
全部谢谢
答案 0 :(得分:1)
SELECT *
FROM banner
WHERE type = "news"
OR (type = "event" AND when > NOW())
答案 1 :(得分:0)
我曾经尝试过类似Lukasz Lysik所建议的东西,但仍然没有过去的事件。
我认为以下解决了它
SELECT *
FROM `banner`
WHERE IF(`type` = 'event', `when` > NOW(), 1)
ORDER BY `when` DESC