SELECT父亲+他的孩子+按nPages排序的子书

用户2241980

父亲表

id     name    age    married
9      Max     45     1

儿童桌

id    father_id    name 
12       9         Rose

书桌

id    owner_id   title            nPages
1        12       Harry potter    755
2        12       JDK             124

我尝试过

Select father.*, child.*, books.*
FROM fathers father
LEFT JOIN children child
    ON child.father_id = father.id
LEFT JOIN books book
    ON book.owner_id = child.id
WHERE father.married = 1
LIMIT 1

归还父子+只有一本书但是我需要孩子拥有的所有书,按nPages排序。

像这样:

[
  name : MAX , 
  age : 45, 
  married : 1, 
  child => [
     father_id => 9, 
     name => Rose, 
     books => [
        book1 => ..., 
        book2 => ...
     ]

  ]
]

请你帮助我好吗?

注意!父亲只能生一个孩子。

JA

你有没有尝试过这样的事情..

SELECT
    father.name AS fatherName,
    child.name AS childName,
    COUNT(books.owner_id) AS bookCount
FROM
    books
    INNER JOIN child ON books.owner_id = child.id
    INNER JOIN father ON child.father_id = father.id
GROUP BY
    books.owner_id
ORDER BY
    bookCount DESC
LIMIT 1

更新(未选中)

SELECT
    father.name AS fatherName,
    child.name AS childName,
    books.title AS bookName,
    books.nPages AS pageCount
FROM
    books
    INNER JOIN child ON books.owner_id = child.id
    INNER JOIN father ON child.father_id = father.id
WHERE 
    books.id IN
                (
                    SELECT
                          books.id
                    FROM 
                          books
                    GROUP BY
                          books.owner_id
                    ORDER BY
                          COUNT(books.owner_id) DESC
                    LIMIT 1
                )
ORDER BY
    books.nPages DESC

最终更新(未选中)

SELECT
    father.name AS fatherName,
    child.name AS childName,
    books.title AS bookName,
    books.nPages AS pageCount
FROM
    child
    INNER JOIN father ON child.father_id = father.id
    INNER JOIN books ON books.owner_id = child.id
WHERE 
    child.id IN
                (
                    SELECT
                          books.owner_id
                    FROM 
                          books
                    GROUP BY
                          books.owner_id
                    ORDER BY
                          COUNT(books.owner_id) DESC
                    LIMIT 1
                )
ORDER BY
    books.nPages DESC

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从孩子班级升为父亲班

来自分类Dev

$ stateprovider中带有打字稿的父亲中的默认孩子

来自分类Dev

CSS选择器,仅选择特定孩子的父亲

来自分类Dev

按孩子的孩子对数组进行排序

来自分类Dev

祖先:按孩子人数排序

来自分类Dev

在c中杀死孩子后,尝试从孩子向父亲添加变量时,fork提供了奇怪的输出

来自分类Dev

PHP Laravel按孩子父级排序

来自分类Dev

MySQL按父母和孩子排序

来自分类Dev

我需要有关通过方法[Java]生育孩子作为父亲的帮助

来自分类Dev

如果我在检查员中显示父亲班,该如何查看孩子班的字段?

来自分类Dev

C ++:从父亲类中获得一个孩子成员

来自分类Dev

使用sigqueue和SIGUSR1将孩子pid发送给父亲

来自分类Dev

我需要有关通过方法[Java]生育孩子作为父亲的帮助

来自分类Dev

按其他数组排序

来自分类Dev

如何在Elasticsearch中按孩子数对父母排序

来自分类Dev

核心数据关系按孩子的属性排序

来自分类Dev

JavaScript - 如何按孩子的键对 firebase 数据进行排序

来自分类Dev

MongoDB对孩子进行排序

来自分类Dev

使div接近其他孩子

来自分类Dev

在Firebase中按孩子的孩子进行查询

来自分类Dev

在Firebase中按孩子的孩子进行查询

来自分类Dev

Javascript按其他数组的顺序排序

来自分类Dev

按其他NSMutableDictionary对NSArray进行排序

来自分类Dev

按分数和其他东西排序

来自分类Dev

Linq Select有很多孩子

来自分类Dev

SELECT 上的角度最近的孩子

来自分类Dev

按列分组项目,按其他列排序

来自分类Dev

MySQL SELECT按2列的值排序

来自分类Dev

每次从映射节点中的目标消息中将一个元素插入到他的“父亲”的选择选项中

Related 相关文章

热门标签

归档