gpt4 book ai didi

来自同一个表的 MySQL 子查询

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

我有一个包含表 xxx_facileforms_forms、xxx_facileforms_records 和 xxx_facileforms_subrecords 的数据库。

xxx_facileforms_subrecords 的列标题:

id | record | element | title | neame | type | value

就使用 element = '101' 过滤记录而言..query 返回正确的记录,但是当我将子查询添加到同一表中的 filete 附加元素 = '4871' 时 - 返回 0 条记录。

SELECT
F.id AS form_id,
R.id AS record_id,
PV.value AS prim_val,
COUNT(PV.value) AS count
FROM
xxx_facileforms_forms AS F
INNER JOIN xxx_facileforms_records AS R ON F.id = R.form
INNER JOIN xxx_facileforms_subrecords AS PV ON R.id = PV.record AND PV.element = '101'
WHERE R.id IN (SELECT record FROM xxx_facileforms_records WHERE record = R.id AND element = '4871')
GROUP BY PV.value

这看起来正确吗?

谢谢!

编辑

感谢您的支持和想法!是的,我留下了很多猜测。对不起。一些输入/输出表数据可能有助于使其更加清晰。

_facileforms_form:
id | formname
---+---------
1 | myform

_facileforms_records:
id | form | submitted
----+------+--------------------
163 | 1 | 2014-06-12 14:18:00
164 | 1 | 2014-06-12 14:19:00
165 | 1 | 2014-06-12 14:20:00

_facileforms_subrecords:
id | record | element | title | name|type | value
-----+--------+---------+--------+-------------+--------
5821 | 163 | 101 | ticket | radio group | flight
5822 | 163 | 4871 | status | select list | canceled
5823 | 164 | 101 | ticket | radio group | flight
5824 | 165 | 101 | ticket | radio group | flight
5825 | 165 | 4871 | status | select list | canceled
<小时/>

查询成功结果:

form_id | record_id | prim_val |  count
1 | 163 | flight | 2

因此,我必须从存在 _subrecord 元素 - 4871 的记录(在本例中为 163 和 165)返回值数据(并对这些记录求和)。

再次感谢您!

最佳答案

感谢您的支持和想法!是的,我留下了很多无法猜测的地方……抱歉。因此,一些输入/输出表数据可能会有所帮助。

_facileforms_form:

标题-> id |表单名称

1 |我的表格

_facileforms_records:

标题-> id |表格|已提交

163 | 1 | 2014-06-12 14:18:00

164 | 1 | 2014-06-12 14:19:00

165 | 1 | 2014-06-12 14:20:00

_facileforms_subrecords

标题-> id |记录|元素|标题 |名称 |类型 |值

5821 | 163 | 163 101 | 101门票 |广播集团|航类

5822 | 163 | 163 4871 |状态 |选择列表 |已取消

5823 | 164 | 164 101 | 101门票 |广播集团|航类

5824 | 165 | 165 101 | 101门票 |广播集团|航类

5825 | 165 | 165 4871 |状态 |选择列表|已取消

<小时/>

成功查询结果:

标题 -> form_id |记录 ID | prim_val |计数

1 | 163 | 163飞行 | 2

因此,我必须从存在 _subrecord 元素 - 4871 的记录(在本例中为 163 和 165)返回值数据(并对这些记录求和)。

再次感谢您!

关于来自同一个表的 MySQL 子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27823154/

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