以下是我的尝试:
SELECT * FROM vehicle WHERE `number` = 'ABC123' AND `date`='2013-08-30');
答案 0 :(得分:0)
这将获得第二天的第一条记录:
SELECT *
FROM vehicle
WHERE number = 'ABC123' AND date = '2013-08-31'
ORDER by <some column>
LIMIT 1
如果您希望将这两个结果都放在一个查询中,请将它们与UNION
。
SELECT *
FROM (SELECT *
FROM vehicle
WHERE number = 'ABC123' AND date = '2013-08-31'
ORDER BY <some column>
LIMIT 1) AS next_day
UNION ALL
(SELECT *
FROM vehicle
WHERE number = 'ABC123' AND date = '2013-08-30'
) AS first_day
答案 1 :(得分:0)
第一次记录,需要一个包含数字或日期的列,我们可以找到MAX()
或其他内容来订购它。
因此,在您的情况下,我假设您有一个包含整数类型数据的列vehicle_id
和 autonumber 。
所以你的查询是:
SELECT * FROM vehicle WHERE date = '2013-08-30' ORDER BY vehicle_id DESC LIMIT 1
你会得到你想要的wat
答案 2 :(得分:0)
试试这个
$query = "SELECT * FROM vehicle
WHERE
number = 'ABC123'
AND date = '".date('Y-m-d')."'
AND date = '".date('Y-m-d',strtotime("+1 days"))."'";
这将返回当前日期和下一个日期的日期,即当前日期为'2013-08-30'
,下一日期为'2013-08-31'
答案 3 :(得分:0)
我使用这种方法,但它的工作却反应缓慢。
(SELECT * FROM vehicle WHERE
号码= 'ABC123' AND
日期='2013-08-30' ORDER by date asc)
UNION
(SELECT * FROM vehicle WHERE
号码= 'ABC123' AND
日期='2013-08-30' ORDER by date asc limit 1);
任何人都可以有更好的吗?谢谢!