我有一个场景如下:
SELECT *
FROM tab1
WHERE description LIKE ' %'
我正在尝试显示类似这样的内容
Message_No Date JobNo
ABC_872 09-06-2015 19:57:12 Job1
ABC_873 09-06-2015 20:57:12 Job1
ABC_874 09-06-2015 21:57:12 Job2
ABC_875 09-06-2015 22:57:12 Job2
即每个职位的最新条目。
我在where子句中尝试了以下条件,
Message_No Date JobNo
ABC_873 09-06-2015 20:57:12 Job1
ABC_875 09-06-2015 22:57:12 Job2
这给我一个像这样的结果
Message_No in (Select max(Message_No) from table group by jobno)
Message_NO是Varchar,Max函数的用法是否正确?(我在消息号上使用max作为消息没有值随时间增加)
请指导
我甚至使用了下面的查询,但是ut给出了所有的行,
Message_No Date JobNo
ABC_872 09-06-2015 19:57:12 Job1
ABC_874 09-06-2015 21:57:12 Job2
答案 0 :(得分:0)
ROW_NUMBER
可以解决问题:
WITH Cte AS(
SELECT *,
RN = ROW_NUMBER() OVER(PARTITION BY JobNo ORDER BY [Date] DESC)
FROM tbl
)
SELECT *
FROM Cte
WHERE RN = 1
答案 1 :(得分:0)
select t1.Message_No,t1.Date,t1.JobNo from table as t1 inner join
(
select Jobno, max(date) as date from table group by jobno
) as t2 on t1.jobno=t2.jobno and t1.date=t2.date
答案 2 :(得分:0)
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-neo4j-rest</artifactId>
<version>3.1.2.RELEASE</version>
</dependency>