当前位置: 首页 > 知识库问答 >
问题:

java - mysql如何查出右表中符合条件的左表记录?

卫英悟
2023-04-27

现在需求是,查询出最近2个月没有操作记录的管理员姓名,比如现在是4月,那么最近两个月都没活动的应就是小明(操作日期以最新的操作日期为判断依据),想问下这样如果用sql写需要怎么写呢?小白一枚,大神勿喷

共有2个答案

洪飞驰
2023-04-27
SELECT a.name
FROM admin a
INNER JOIN (
  SELECT admin_id, MAX(created_at) AS latest_created_at
  FROM admin_log
  GROUP BY admin_id
) AS latest_b ON a.id = latest_b.admin_id
WHERE latest_b.latest_created_at < DATE_SUB(NOW(), INTERVAL 2 MONTH)
洪经义
2023-04-27

不确定你的数据库类型,拿mysql写了一下你参考一下

select * from admin where id not in (select distinct admin_id from admin_log where  created_at > date_sub(now(),interval 2 month)
 类似资料:
  • 问题内容: 我已经尝试解决这个问题一段时间了,希望有人能帮助我。我有两个桌子,第一个桌子是 表名:OnlineTest 第二张表是 表名称:UserStatus 结果 我已经试过这个查询, 但是此查询将带出结果的前两行,而不是最后两行,其中userId和status为null。 如何带来以上结果? 问题答案: 将谓词放在子句中: 这将返回的所有行,其中谓词失败的列填充为。

  • 问题内容: 我有一个这样的 LoginTime 表: 我想删除的最后一条记录。用户的最后一条记录可以通过识别。 如何使用一个查询执行此操作。 问题答案: 您需要按user_id(例如WHERE user_id = 1)过滤表,然后按时间(例如ORDER BY datetime)对其进行排序,然后将查询限制为一项(例如LIMIT1),然后删除此查询的结果。最后,您将获得如下查询:

  • 问题内容: 查询条件应支持布尔运算符和正则表达式。我已经读过关于Booleano的文章,但是它不支持正则表达式。 如果没有满足此要求的东西,那将是开始构建的最佳技术? 以下示例中的语法只是一个示例,但是它提供的功能应该存在。 等于 适用于以下清单 问题答案: 我设法使用pyparsing模块解决了这个问题。 为了避免发生冲突,我必须用<>替换regexp(),但是目前所有这些似乎都是最好的解决方案

  • 本文向大家介绍MySQL左联多表查询where条件写法示例,包括了MySQL左联多表查询where条件写法示例的使用技巧和注意事项,需要的朋友参考一下 这两条语句结果是不同的,应该是left join的时候如果条件是多个表mysql会自动转成内联导致,第二条语句才能达到正确的目的(为了找到相差的两条数据)。

  • 问题内容: 我有以下数据: 对于每组记录(按ParentID分组),我想查找所有没有包含“ A”作为数据值的记录的组。 由于第1组和第6组确实包含至少一个以“ A”作为数据值的记录,因此我不希望看到它们。我只想查看记录4和5(它们是组4的一部分),因为该组中没有记录带有“ A”。 任何帮助是极大的赞赏! 问题答案: 如果表很大,建议建立索引。

  • 这是我的密码 我的输出: 有没有办法让我从4s车开始,从另一个方向开始?这样地: