zoukankan      html  css  js  c++  java
  • 使用子查询时应当注意的

    在一个查询中:

    UPDATE a
    SET a.scts = b.v1, a.YCYL = b.v2, a.YCSL = b.v3
    FROM kfdbsyy a,
              (SELECT f_wellnumber, COUNT(*) AS v1, SUM(f_fule) AS v2,
                   SUM(f_totalliquid - f_fule) AS v3
             FROM (SELECT *
                     FROM CY_WELLRECORD
                     WHERE f_reporttime LIKE '2004-06%') 
             GROUP BY f_wellnumber
    ) b
    WHERE a.JH = b.f_wellnumber AND a.ny = '200406'

    红色在子查询单独运行没有问题,但整个运行,老是报告group附近有错。反复试验,发现跟内部的子查询有关。改为
    UPDATE a
    SET a.scts = b.v1, a.YCYL = b.v2, a.YCSL = b.v3
    FROM kfdbsyy a,
              (SELECT f_wellnumber, COUNT(*) AS v1, SUM(f_fule) AS v2,
                   SUM(f_totalliquid - f_fule) AS v3
             FROM (SELECT *
                     FROM CY_WELLRECORD
                     WHERE f_reporttime LIKE '2004-06%')  as c
             GROUP BY c.f_wellnumber) b
    WHERE a.JH = b.f_wellnumber AND a.ny = '200406'
    或者
    UPDATE a
    SET a.scts = b.v1, a.YCYL = b.v2, a.YCSL = b.v3
    FROM kfdbsyy a,
              (SELECT f_wellnumber, COUNT(*) AS v1, SUM(f_fule) AS v2,
                   SUM(f_totalliquid - f_fule) AS v3
             FROM (SELECT *
                     FROM CY_WELLRECORD
                     WHERE f_reporttime LIKE '2004-06%') DERIVEDTBL
             GROUP BY f_wellnumber) b
    WHERE a.JH = b.f_wellnumber AND a.ny = '200406'

    均可。
  • 相关阅读:
    web网站开发反面教材
    phpstudy 做的后台长时间运行的脚本,设置了脚本运行时间还是40秒就返回500,用的apache2.4.39
    PHP_EOL
    web文件下载,a标签文件下载,php文件下载
    邮件发送
    网站调用qq第三方登录
    微信Pcweb登录简介
    JqueryOn绑定事件方法介绍
    php+ajax文件上传
    php操作数组函数
  • 原文地址:https://www.cnblogs.com/jetz/p/247595.html
Copyright © 2011-2022 走看看