Loading [MathJax]/jax/output/CommonHTML/config.js
社区首页 >问答首页 >如何在mysql中通过检查组中是否存在值来对组进行过滤?

如何在mysql中通过检查组中是否存在值来对组进行过滤?
EN

Stack Overflow用户
提问于 2021-04-02 14:07:03
回答 1查看 21关注 0票数 1

我有一张journalstransactions桌子。journals是父对象,而transactions是它的子对象。

我尝试做的是对transactions表进行分组以检查sum(amounts)。但是我不需要整个transactions --只需要有account的那些

我知道这是一个糟糕的描述,但我甚至不知道如何接近它。所以,如果你们需要更多细节,请让我知道。

基本上,这就是我想要实现的查询。但是由于一些我不知道的原因,它不能工作。

代码语言:javascript
代码运行次数:0
复制
select 
    t1.*
from 
    (
        select 
            journal_id,
            sum(amount)
            group_concat(quote(account)) as acc_codes 
        from
            `transactions` 
        group by journal_id 
    ) as t1
where '4500' in (t1.acc_codes)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-02 14:12:56

去除子查询方法,代之以添加一个HAVING子句断言,用于检查帐户是否存在:

代码语言:javascript
代码运行次数:0
复制
SELECT journal_id, SUM(amount) AS total
FROM `transactions` 
GROUP BY journal_id
HAVING SUM(account = '4500') > 0;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66920553

复制
相关文章

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文