gpt4 book ai didi

PHP 和 MySQL - 左连接?子查询?通过...分组? - 限制 1

转载 作者:行者123 更新时间:2023-11-29 06:23:03 25 4
gpt4 key购买 nike

我已经坚持了一段时间,希望有人能够提供帮助。

我做了一个简单的 mysql 查询(见下文),它运行良好,但现在我需要更改它以从其他表中检索额外的数据。

这是我的三个表:

成员表

  • 身份证
  • 名字
  • 姓氏

认证表

  • 身份证
  • 成员(member)编号
  • 类(class)ID
  • 认证日期

类(class)表

  • 身份证
  • 类(class)名称
  • 等级

成员(member)可以参加许多类(class)。当他们这样做时,他们会获得与正确的成员(member)和类(class)相对应的认证。

类(class)水平上升。

我正在尝试列出我的所有成员并显示他们的最高认证(根据其级别)和类(class)名称。

并非所有成员都有认证,但我仍然需要检索他们的数据。

我需要调整下面的查询以包含用户的最高认证并且仅包含最高认证。我试图避免每个成员获得多项认证。

任何帮助都会很棒,因为我多年来一直在努力解决这个问题。我已经尝试过 LEFT JOIN、GROUP BY、子查询,但就是无法理解它。

谢谢。

// Member Query
$tableMember = $wpdb->prefix . "dmc_diver";
$tableCertifications = $wpdb->prefix . "dmc_certifications";
$tableCourse = $wpdb->prefix . "dmc_course";

$memberQuery = $wpdb->get_results("

SELECT
ID,
firstName,
lastName

FROM
$tableMember

");

最佳答案

这是一种方法,使用相关子查询:

select m.*,
(select max(co.level)
from certification c join
course co
on c.id = co.courseid
where c.memberid = m.id
) as max_level
from members m;

关于PHP 和 MySQL - 左连接?子查询?通过...分组? - 限制 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32508923/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com