Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用子查询合并两个查询?_Sql_Postgresql - Fatal编程技术网

Sql 使用子查询合并两个查询?

Sql 使用子查询合并两个查询?,sql,postgresql,Sql,Postgresql,有没有可能有这样的东西: SELECT MAX(id), somefield UNION ALL SELECT MIN(id), someotherfield FROM (SOME GIANT SQL JOIN) 基本上,我希望在两个联合查询中使用相同的联接子查询。您可以使用with子句,方式如下: with sub as (some giant sql join) select max(id), somefield from sub group by somefield union

有没有可能有这样的东西:

SELECT MAX(id), somefield
UNION ALL
SELECT MIN(id), someotherfield
FROM
(SOME GIANT SQL JOIN)

基本上,我希望在两个联合查询中使用相同的联接子查询。

您可以使用with子句,方式如下:

with sub as
 (some giant sql join)
select max(id), somefield
  from sub
 group by somefield
union all
select min(id), someotherfield from sub group by someotherfield

(作为两次写出同一内联视图的替代方法)

可以使用with子句,方式如下:

with sub as
 (some giant sql join)
select max(id), somefield
  from sub
 group by somefield
union all
select min(id), someotherfield from sub group by someotherfield

(作为两次写出同一内联视图的替代方法)

可以使用with子句,方式如下:

with sub as
 (some giant sql join)
select max(id), somefield
  from sub
 group by somefield
union all
select min(id), someotherfield from sub group by someotherfield

(作为两次写出同一内联视图的替代方法)

可以使用with子句,方式如下:

with sub as
 (some giant sql join)
select max(id), somefield
  from sub
 group by somefield
union all
select min(id), someotherfield from sub group by someotherfield


(作为两次写出同一个内联视图的替代方法)

对不起:语法基本上是:
query1 union query2
(因此:两个子查询都需要一个
FROM…
)并且:union几乎总是一个糟糕设计的标志。好吧,你心目中union的用法可能是糟糕的设计。当用例未知时,假设糟糕的设计几乎总是不正确的。下面的答案是有效的。你是对的:我不知道
用例
,但我怎么知道,你没有展示它。。。顺便说一句:你问题中语法错误的片段对你没有帮助。是的。语法不是这段代码的重点。我得到了我想要的帮助。谢谢。
语法不是这段代码的重点。
我要用上面的文字制作标签。非常感谢。抱歉:语法基本上是:
query1 union query2
(因此:两个子查询都需要一个来自…)的
)和:union几乎总是表示设计不好。好吧,您心目中union的用法可能是不好的设计。当用例未知时,假设糟糕的设计几乎总是不正确的。下面的答案是有效的。你是对的:我不知道
用例
,但我怎么知道,你没有展示它。。。顺便说一句:你问题中语法错误的片段对你没有帮助。是的。语法不是这段代码的重点。我得到了我想要的帮助。谢谢。
语法不是这段代码的重点。
我要用上面的文字制作标签。非常感谢。抱歉:语法基本上是:
query1 union query2
(因此:两个子查询都需要一个来自…
)的
)和:union几乎总是表示设计不好。好吧,您心目中union的用法可能是不好的设计。当用例未知时,假设糟糕的设计几乎总是不正确的。下面的答案是有效的。你是对的:我不知道
用例
,但我怎么知道,你没有展示它。。。顺便说一句:你问题中语法错误的片段对你没有帮助。是的。语法不是这段代码的重点。我得到了我想要的帮助。谢谢。
语法不是这段代码的重点。
我要用上面的文字制作标签。非常感谢。抱歉:语法基本上是:
query1 union query2
(因此:两个子查询都需要一个来自…
)的
)和:union几乎总是表示设计不好。好吧,您心目中union的用法可能是不好的设计。当用例未知时,假设糟糕的设计几乎总是不正确的。下面的答案是有效的。你是对的:我不知道
用例
,但我怎么知道,你没有展示它。。。顺便说一句:你问题中语法错误的片段对你没有帮助。是的。语法不是这段代码的重点。我得到了我想要的帮助。谢谢。
语法不是这段代码的重点。
我要用上面的文字制作标签。非常感谢。