如何将两个不同大小写的sql合并为1?

维托

*这个问题在stackoverflow中已经问过

如何在SQL上使用if then语句?

我已经修改并在这里再次询问*


1)“ SELECT officer, null, sum(mkt), Sum(Non), sum(ICP), (sum(mkt)+Sum(Non)+sum(ICP)) as total From [DB$] group by officer” <=他们还好。他们应该按军官分组,因为每个军官都有很多记录


2)对于字段mkt,它不一定由每个记录中的值组成。当mkt由价值组成,例如30时,表示该军官从事现场工作。因此,我应该计算他的现场工作时间-Totalmin。

  officer mkt Totalmin
   S29    30   50
   S29    60
   S29    70   80
   S29    80
   S55    30   80
   S55    60
   S55    70   80
   S55    80

因此,结果应为:

  officer sum(totalmin)
   s29     130
   s55     160

在此处输入图片说明

您可以在这里想象。如果Mkt字段由数字组成,则总分钟数将加起来成为必需的分钟数。

在图片中,最低要求的输出应按45+40=85人员分组(staffid-186)

怎么写这个sql?


而且,问题是我必须在同一个sql中合并这两种情况。我怎样才能?

瓦西里·伊沃扎(Vasily Ivoyzha)

您可以在select中使用子查询来执行以下任务:

Sub SQL()
Dim cn As Object: Set cn = CreateObject("ADODB.Connection")
Dim rs As Object: Set rs = CreateObject("ADODB.Recordset")
Dim tbl1$, QT, strFile$, strCon$, strSQL$

strFile = ThisWorkbook.FullName 'if not active file then specify path!!!

strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFile & ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"";"
cn.Open strCon

tbl1 = "[Sheet1$" & Sheets("Sheet1").UsedRange.Address(0, 0) & "]" 'replace sheet1 with required sheet name

strSQL = "SELECT  o.officer ," & _
         "        NULL ," & _
         "        SUM(o.mkt) ," & _
         "        SUM(o.Non) ," & _
         "        SUM(o.ICP) ," & _
         "        ( SELECT    SUM(i.Totalmin) FROM " & tbl1 & " AS i " & _
         "          WHERE i.Mkt > 0 AND i.officer = o.officer) AS TotalMin " & _
         "        FROM    " & tbl1 & " AS o " & _
         "        GROUP BY o.officer"

rs.Open strSQL, cn

Workbooks.Add
Set QT = ActiveSheet.QueryTables.Add(rs, ActiveSheet.[A1]): QT.Refresh: QT.Delete
    rs.Close
    cn.Close
End Sub

我已经测试了这种方法,因此它也适合您:

来源:

在此处输入图片说明

输出:

在此处输入图片说明

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Windows中合并两个大小写不同的git目录?

来自分类Dev

如何将两个查询合并为1的SQL Server 2008

来自分类Dev

如何将这两个不同的LINQ查询合并为一个?

来自分类Dev

如何将两个SQL查询的结果合并为一个

来自分类Dev

如何将两个SQL查询合并为一个?

来自分类Dev

如何将这两个查询合并为1以满足条件?

来自分类Dev

SQL Server CE:如何将两个查询的结果合并为一行?

来自分类Dev

在Rails中,如何将这两个不同的has_manys合并为一个?

来自分类Dev

EF6:如何将两个不同的count()查询合并为一个?

来自分类Dev

如何将两个不同的 List 对象合并为一个 List 并对它们进行排序

来自分类Dev

将两个大小不同的数据框合并为一个

来自分类Dev

如何将存在于两个不同数组中的对象合并为单个对象数组?

来自分类Dev

如何将两个jrxml jasper报告合并为1个pdf同一页

来自分类Dev

T-SQL-如何将两个表的结果与两个不同的WHERE子句合并

来自分类Dev

将两个不同的sql语句合并为一个

来自分类Dev

将两个不同的sql语句合并为一个

来自分类Dev

如何将这两个Lambda合并为一个GroupBy调用?

来自分类Dev

如何将两个联接查询合并为一个?

来自分类Dev

如何将两个或多个Counters合并为一个字典?

来自分类常见问题

如何将两个RMarkdown(.Rmd)文件合并为一个输出?

来自分类Dev

如何将两个图像合并为一个?

来自分类Dev

如何将两个函数调用合并为一个?

来自分类Dev

如何将这两个linq查询合并为一个查询?

来自分类Dev

如何将两个SKTextures合并为一个

来自分类Dev

如何将两个remap()操作合并为一个?

来自分类Dev

如何将两个嵌套的数据结构合并为一个?

来自分类Dev

我如何将两个脚本合并为一个,就像这样

来自分类Dev

如何将这两个单独的聚合查询合并为一个查询?

来自分类Dev

如何将两个LINQ合并为一个?

Related 相关文章

  1. 1

    如何在Windows中合并两个大小写不同的git目录?

  2. 2

    如何将两个查询合并为1的SQL Server 2008

  3. 3

    如何将这两个不同的LINQ查询合并为一个?

  4. 4

    如何将两个SQL查询的结果合并为一个

  5. 5

    如何将两个SQL查询合并为一个?

  6. 6

    如何将这两个查询合并为1以满足条件?

  7. 7

    SQL Server CE:如何将两个查询的结果合并为一行?

  8. 8

    在Rails中,如何将这两个不同的has_manys合并为一个?

  9. 9

    EF6:如何将两个不同的count()查询合并为一个?

  10. 10

    如何将两个不同的 List 对象合并为一个 List 并对它们进行排序

  11. 11

    将两个大小不同的数据框合并为一个

  12. 12

    如何将存在于两个不同数组中的对象合并为单个对象数组?

  13. 13

    如何将两个jrxml jasper报告合并为1个pdf同一页

  14. 14

    T-SQL-如何将两个表的结果与两个不同的WHERE子句合并

  15. 15

    将两个不同的sql语句合并为一个

  16. 16

    将两个不同的sql语句合并为一个

  17. 17

    如何将这两个Lambda合并为一个GroupBy调用?

  18. 18

    如何将两个联接查询合并为一个?

  19. 19

    如何将两个或多个Counters合并为一个字典?

  20. 20

    如何将两个RMarkdown(.Rmd)文件合并为一个输出?

  21. 21

    如何将两个图像合并为一个?

  22. 22

    如何将两个函数调用合并为一个?

  23. 23

    如何将这两个linq查询合并为一个查询?

  24. 24

    如何将两个SKTextures合并为一个

  25. 25

    如何将两个remap()操作合并为一个?

  26. 26

    如何将两个嵌套的数据结构合并为一个?

  27. 27

    我如何将两个脚本合并为一个,就像这样

  28. 28

    如何将这两个单独的聚合查询合并为一个查询?

  29. 29

    如何将两个LINQ合并为一个?

热门标签

归档