我必须得到的行的最新日期少于从选择框中选择的给定日期。
我已经想出了如何获取最新日期的行,如
select * from test_table where created in (select max(created) from test_table)
我知道我必须使用created between
,但我无法解决它。从选择框中选择作为上限的日期。所以,我手头之前不知道。
请帮帮我
例如,让从文本框中选择的日期是2013年11月11日。我必须获得一个创建日期的行,该日期是表格中的最大日期少于2013年11月11日。 提前致谢
答案 0 :(得分:1)
此查询将返回最新日期时间小于@givendate的行:
SELECT *
FROM test_table
WHERE created = (SELECT max(created)
FROM test_table
WHERE created < @givendate)
请注意,可能有多行具有相同的最新日期时间。或者你可以简单地使用它:
SELECT *
FROM test_table
WHERE created < @givendate
ORDER BY created DESC
LIMIT 1
答案 1 :(得分:0)
要获得倒数第二个条目,请使用limit
函数
select *
from test_table
order by created desc
limit 1,1
答案 2 :(得分:0)
试试这个
select *
from test_table order by created desc
limit 1