SQL中如何选择表中日期最大值

SQL中如何选择表中日期最大值,第1张

给你个思路:

WITH Messages (ID,ToEmpID,FromEmpID,SendDate,Detail) AS

(

SELECT 1,'张三','李四','2014/06/05','a' UNION ALL

SELECT 2,'王五','张三','2014/06/03','b' UNION ALL

SELECT 3,'刘六','张三','2014/06/02','b' UNION ALL

SELECT 4,'张三','李四','2014/05/05','a' UNION ALL

SELECT 5,'王五','张三','2014/05/03','b' UNION ALL

SELECT 6,'刘六','张三','2014/05/02','b'

)

SELECT ID,ToEmpID,FromEmpID,SendDate FROM Messages a

WHERE ID in

(

    SELECT TOP 1 ID 

    FROM Messages

    where ToEmpID=aToEmpID AND FromEmpID=aFromEmpID 

    ORDER BY SendDate DESC

)

Select AsendtoWhom,

sendDate = Isnull((

Select Top 1 BsendDate From sendChat B

Where BsendtoWhom = AsendtoWhom

And BsendEmail='aa@sinacom'

Order by BsendDate Desc

),'')

From

(select distinct sendtoWhom

from sendChat

where sendEmail='aa@sinacom'

order by sendDate desc) A

select from

(select

a,

row_number() over (partition by acol_a order by create_ts desc) as rn

from table1 a )

where rn = 1;

-- table1 换成你的表, col_a 换成你的分组列, create_ts 是你的时间戳字段, 如果是字符串需转换为date

从数据库中取出的日期格式是2009-7-2 10:00:00

可以用下面的函数转化为utilDate格式,用utilDate可以分别取出年月日

日期所使用的字符串格式

/

private static DateFormat format = new SimpleDateFormat("yyyy-MM-dd");

/

转换日期到字符串

@param date

日期

@return 字符串

/

public static String convertDateToString(Date date) {

return formatformat(date);

}

/

转换字符串到日期

@param str

字符串

@return 日期

/

public static Date convertStringToDate(String str) {

Date date;

try {

date = formatparse(str);

return date;

} catch (ParseException e) {

eprintStackTrace();

}

return null;

}

以上就是关于SQL中如何选择表中日期最大值全部的内容,包括:SQL中如何选择表中日期最大值、SQL查询唯一的数据并按时间降序怎么写、oracle分组统计查询之后,获取数量最大的记录等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9562388.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存