首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算每一行,并将两列的值传递给查询,然后将每个结果附加到表中

计算每一行,并将两列的值传递给查询,然后将每个结果附加到表中
EN

Stack Overflow用户
提问于 2020-07-30 06:48:12
回答 1查看 32关注 0票数 0

我有一个表,其结构如下,名称为table1

代码语言:javascript
复制
sid  userid    date        result
1    169110   2020-01-03   (null)
2    178662   2020-01-06   (null)
3    165381   2020-01-07   (null)
5    368031   2020-01-08   (null)
7    163626   2020-01-09   (null)

现在,我需要将cft.useridcft.date的每个行值发送到一个mysql查询(查询如下),该查询给出每行的结果值。

代码语言:javascript
复制
UPDATE collision_fact_table cft 
  SET cft.on_time_completion = (
 SELECT DISTINCT
        CONCAT(ROUND(NULLIF(SUM(facttable.compliant), 0) / NULLIF(SUM(facttable.Occurences), 0) * 100), '%') AS `Percentage Completed`
        FROM fd_dw.ComplianceFactTable facttable
WHERE  (CAST(facttable.`CourseModule_dueDateID` AS date) - cft.collision_date) <= 0
    AND facttable.UserLicenseInUsing = 1 
    AND (facttable.`CourseModule_dueDateID` > 0)
    AND facttable.UserId = cft.userid
    GROUP BY facttable.`UserID`);

例如,当我向上面的查询发送userid为169110的第一行值和date value时,我将得到69的结果,并且我需要将69更新为table1,如下所示

代码语言:javascript
复制
sid  userid    date        result
1    169110   2020-01-03   69

类似地,它应该对所有行进行迭代,并且应该像下面这样更新table1

代码语言:javascript
复制
sid  userid    date        result
1    169110   2020-01-03   69
2    178662   2020-01-06   55
3    165381   2020-01-07   64
5    368031   2020-01-08   48
7    163626   2020-01-09   56

但是当我尝试执行update查询时,它给出了错误Unknown column 'cft.date' in field list

请任何人帮帮我

EN

回答 1

Stack Overflow用户

发布于 2020-07-30 06:56:32

我认为您基本上需要一个相关子查询:

代码语言:javascript
复制
update table1 t1
set result = (
    select cd.result
    from ...
    where 
        cd.ScheduleDateID <= t1.date
        and cd.CourseModuleComplete_DateID <= t1.date
        and cd.UserId = t1.userid
)

您没有提供更多关于子查询本身的细节。关键是它应该返回一行,并且只返回一行:

  • 如果不返回任何行,则table1中相应行的result将设置为null (无论其原始值如何)-这可能是您想要的,也可能不是您想要的

  • 如果返回多行,则查询将出现

错误

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63163582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档