Oracle 语句 Return 结果取决于记录的最大值
Oracle Statement to Return Result Depending on Max Value of a Record
卡在这里一整天了
我有 2 个表:
TABLE 1: 日志
FIRST_NAME LAST_LOG_IN
------------------------------
约翰 15-NOV-17
简 17 年 11 月 13 日
约翰 12-NOV-17
约翰 11-NOV-17
约翰 10-NOV-17
简 12-NOV-17
TABLE 2:用户
FIRST_NAME LAST_NAME
------------------------------
无名氏
约翰·史密斯
要求是:
如果今天是 22-NOV-17,我需要获取 FIRST_NAME、LAST_NAME
和用户的 LAST_LOG_IN(采用 'YYYY-MM-DD HH24:MI:SS' 格式)
仅当 his/her LAST_LOG_IN 早于最近 7 天
只放入一个语句在SQL Developer中执行(不使用PL/SQL)
所以预期输出应该是:
FIRST_NAME LAST_NAME LAST_LOG_IN
---------------------------------------------- -
无名氏 2017-11-13 17:49:57
类似于:
select u.first_name, u.last_name, to_char(a.log_date,'YYYY-MM-DD HH24:MI:SS') from (
select first_name, max(last_log_in) log_date from logs group by first_name) a
inner join
user u on (a.first_name = u.first_name)
where a.log_date > sysdate - 7;
卡在这里一整天了
我有 2 个表:
TABLE 1: 日志 FIRST_NAME LAST_LOG_IN ------------------------------ 约翰 15-NOV-17 简 17 年 11 月 13 日 约翰 12-NOV-17 约翰 11-NOV-17 约翰 10-NOV-17 简 12-NOV-17
TABLE 2:用户 FIRST_NAME LAST_NAME ------------------------------ 无名氏 约翰·史密斯
要求是:
如果今天是 22-NOV-17,我需要获取 FIRST_NAME、LAST_NAME 和用户的 LAST_LOG_IN(采用 'YYYY-MM-DD HH24:MI:SS' 格式) 仅当 his/her LAST_LOG_IN 早于最近 7 天
只放入一个语句在SQL Developer中执行(不使用PL/SQL)
所以预期输出应该是:
FIRST_NAME LAST_NAME LAST_LOG_IN ---------------------------------------------- - 无名氏 2017-11-13 17:49:57
类似于:
select u.first_name, u.last_name, to_char(a.log_date,'YYYY-MM-DD HH24:MI:SS') from (
select first_name, max(last_log_in) log_date from logs group by first_name) a
inner join
user u on (a.first_name = u.first_name)
where a.log_date > sysdate - 7;