mysql - SQL 选择查询连接

标签 mysql sql inner-join select-query

下面是我的 MYSQL 表。我无法弄清楚 MySQl 查询是什么样子的,它只为每个月(按一个月中的最新日期)从父项中选择一行及其随后的子行。因此,在给定的示例中,它应该从子表中返回 ID 为 4,5,6,10,11,12 的行

enter image description here

最佳答案

我认为像下面这样的东西可以为您解决问题:

SELECT Child.id 
FROM parent 
    INNER JOIN Child ON parent.id = child.parent_id
WHERE parent.`date` IN (SELECT max(`date`) FROM parent GROUP BY YEAR(`date`), MONTH(`date`))

有趣的部分是 WHERE 子句,我们只抓取 parent 表记录,其中 datemax(date) 用于特定的月/年组合。

关于mysql - SQL 选择查询连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33832073/

相关文章:

php - 由于撇号,mysql 查询未更新

mysql - 我在 Cent 操作系统上安装了 PhpMyAdmin。我可以通过 Windows 8 访问它吗?

php - 如何更新两个独立 ID 的列?

SQL 选择最大值和平均值

sql - hadoop 配置单元使用 row_number()

MySQL选择最高用户最高排名组双胞胎

mysql - 将存储数据的 SQL 表键递增一

mysql - 显示 "users"表中的所有用户名

mysql - 如何在 MySQL 中使用更新语句,同时使用两个内联接并将表设置为串联?

php - WordPress:如何按meta_value按降序顺序从wp_posts和wp_postmeta获取记录?