Ⅰ sql查询时间最大的语句
SELECT
*
FROM
表
WHERE
DATE = ( SELECT MAX( DATE ) FROM 表 )
Ⅱ sql取日期最大的情况下 值最大的
有几种方式可以选择
(1)按照日期和d/c的倒叙排列,然后利用rownum取第一行,具体写法要测试
(2)子查询,先利用max(b)找到日期最大值,然后在等于日期最大值的情况下,找d/c的最大值。
(3)根据插入规律找日期,比如你是今天上午九点插入昨天的日期,那么只要过了9点你就sysdate-1,截取到日期,然后再吵最大值就行了。没过9点就sysdate-2,至于过没过9点,如果你要写过程的的话,价格判断就行。
Ⅲ SQL中如何选择表中日期最大值
给你个思路:
WITHMessages(ID,ToEmpID,FromEmpID,SendDate,Detail)AS
(
SELECT1,'张三','李四','2014/06/05','a'UNIONALL
SELECT2,'王五','张三','2014/06/03','b'UNIONALL
SELECT3,'刘六','张三','2014/06/02','b'UNIONALL
SELECT4,'张三','李四','2014/05/05','a'UNIONALL
SELECT5,'王五','张三','2014/05/03','b'UNIONALL
SELECT6,'刘六','张三','2014/05/02','b'
)
SELECTID,ToEmpID,FromEmpID,SendDateFROMMessagesa
WHEREIDin
(
SELECTTOP1ID
FROMMessages
whereToEmpID=a.ToEmpIDANDFromEmpID=a.FromEmpID
ORDERBYSendDateDESC
)
Ⅳ sql中查同一条记录多个时间,取最大值
ORACLE 可以直接函数取
greatest(repdate,repcreatedate,RepAuditTime,printime)
mssqlserver可能先列转行求分组最大,没有测试环境,忘记了
Ⅳ SQL查时间最大值
select dest_location_gid from order_movement where ORDER_MOVEMENT_GID=(select top 1 ORDER_MOVEMENT_GID from order_movement_status where status_value = '已入库' order by INSERT_DATE desc)
Ⅵ sql分组后取最大日期的记录
select a.f_SPBM,a.f_kcsl
from tempTest a,
(
select f_SPBM,max(f_rq) f_rq
from tempTest
group by f_SPBM
) b
where a. f_SPBM = b. f_SPBM
and a.f_rq = b.f_rq
Ⅶ sql语句 获取 最大时间 最小时间 group by 筛选
我看了一下你的那个表当holderName一样时,只有时间会不一样对不对。我觉得可以这样写
SELECTD.CardNo,C.CardID,D.HolderName,D.IODate,min(D.IOTime)asIOTime,D.IOGateNo
fromIODataD,CardDataC
whereD.CardNo=C.CardNo
groupbyD.CardNo,C.CardID,D.HolderName,D.IODate,D.IOGateNo
unionall
SELECTD.CardNo,C.CardID,D.HolderName,D.IODate,max(D.IOTime)asIOTime,D.IOGateNo
fromIODataD,CardDataC
whereD.CardNo=C.CardNo
groupbyD.CardNo,C.CardID,D.HolderName,D.IODate,D.IOGateNo
Ⅷ SQL中怎么查询出时间最大的那条记录啊句子该怎么写
select * from (
select *,row_number() over(order by date desc) as dateby from tablea
)a
where a.dateby=1
row_number()中,以date排序,然后取排序为1即最大时间记录
Ⅸ sql取时间最大的数据
select id, 荣誉, min(时间)
from t
group by id, 荣誉
Ⅹ 如何从数据库(oracle,mysql)中取出根据ID分组后,时间最大的数据
select * from (select row_number() over(partition by id order by create_tiem desc) rn, id, create_time, ... , ... from table )t1 where rn = 1;
在这里...代表的是字段名称,将需要的字段名称放在这里,需要哪些放那些。
SELECT t.*FROM (select * from `table` order by `create_time` desc limit 10000000000) t GROUP BY t.id;
在这里就是先将数据进行排序然后再分组,然后取出的是最大的一个值,这里有点要注意,limit 10000000000这个根据不同的版本看是否要加这个,5.5之前的不用加,之后的要加,反正加上肯定没有错。
group by后取的一条数据默认是按主键id排序后的第一条