我有一个例子
id projectid date
1 2 2015-04-19
2 2 2015-04-19
3 2 2015-04-19
4 2 2015-04-19
5 2 2015-04-21
6 2 2015-04-21
7 2 2015-04-21
8 2 2015-04-22
9 2 2015-04-22
10 2 2015-04-22
我想使用2015-04-19
日期显示下一个即将存储的日期,即下一个日期是2015-04-21
,使用mysql查询
id projectid date
5 2 2015-04-21
6 2 2015-04-21
7 2 2015-04-21
答案 0 :(得分:0)
在Select Statement中使用DateAdd函数,如下所示
DATEADD(d,1,(CASE table.date as Date))
答案 1 :(得分:0)
基本上,要从数据库中显示2015-04-19之前的下一个日期,这应该足够了:
SELECT * FROM table WHERE date > '2015-04-19' ORDER BY date ASC LIMIT 1
答案 2 :(得分:0)
SELECT * FROM table WHERE date > '2015-04-19' ORDER BY date LIMIT 1
<强>更新强>
您写道,您希望显示下一个即将存储的日期,但查看您的示例输出和评论,您似乎希望获得下一个日期的所有记录。
SELECT * FROM table WHERE date=(
SELECT date FROM table WHERE date > '2015-04-19' ORDER BY date LIMIT 1
)
SQL Fiffle example,将其用作复制粘贴解决方案。
答案 3 :(得分:0)
子查询将仅返回根据该日期结果的下一个日期。
SELECT * FROM tableName WHERE date=("SELECT date FROM table WHERE date > '2015-04-19' ORDER BY date LIMIT 1")
答案 4 :(得分:0)
我已经为您撰写了查询。我希望它能解决你的问题。
<强> QUERY 强>
SELECT * FROM table
WHERE `date` = (SELECT `date` FROM table
WHERE `date`>'2015-04-19' ORDER BY `date` ASC LIMIT 1);