我有一个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循环了。但是,我正在将应用程序迁移到另一个框架,如果我可以在一个查询中执行此操作并且我不知道从哪里开始,那么它将真正有用(并且我相信会更有效率)。我不是在寻找任何人来编写查询,我只需要知道我应该在这里使用的查询结构。
由于
答案 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,则查询将失败。