复杂的SQL查询需要查询结构

时间:2014-11-12 20:27:04

标签: sql

我有一个SQL查询,它以下列格式提取结果集

    .       Header1 Header2 Header3 Header4
    Row1
    Row2
    Row3
    Row4

此查询将始终返回4行。

我最终想要做的是制作另一个如下所示的结果集:

    .       Header1 Header2 Header3 Header4 Header5 Header6
    Row1
    Row2
    Row3
    Row4

其中[Header5,Row1]是另一个以[Header1,Row1]和[Header2,Row1]为参数的查询的返回值

[Header6,Row1]是以[Header1,Row1]和[Header2,Row1]为参数的不同查询的返回值

我已经完成了第一个表,我实际上已经在我的应用程序代码中使用for循环了。但是,我正在将应用程序迁移到另一个框架,如果我可以在一个查询中执行此操作并且我不知道从哪里开始,那么它将真正有用(并且我相信会更有效率)。我不是在寻找任何人来编写查询,我只需要知道我应该在这里使用的查询结构。

由于

1 个答案:

答案 0 :(得分:1)

这样的事情怎么样?

SELECT
  x.h1 AS Header1,
  x.h2 AS Header2,
  x.h3 AS Header3,
  x.h4 AS Header4,
  (SELECT y.h5 FROM y WHERE something with x.h1) AS Header5,
  (SELECT z.h6 FROM z WHERE something with x.h1 and x.h2) AS Header6,
FROM
  x

子查询必须返回0或1结果。如果任何子查询返回的结果超过1,则查询将失败。