我有类似的东西:
SELECT a, b
INTO v_a, v_b
FROM (
SELECT x, y
FROM whatever
UNION
SELECT z, w
FROM something
) AS subquery (a, b)
Run Code Online (Sandbox Code Playgroud)
这当然在 Oracle 中不起作用(该语法 - 除了 INTO 和可选的 AS)在 SQL Server 中会很好http://sqlfiddle.com/#!6/b7dcf/1
是否有替代方法(这需要我将别名放在里面),其中列别名在外面:
SELECT a, b
INTO v_a, v_b
FROM (
SELECT x AS a, y AS b
FROM whatever
UNION
SELECT z, w
FROM something
) subquery;
Run Code Online (Sandbox Code Playgroud)
http://sqlfiddle.com/#!6/c12e1/1 - 当然适用于 SQL Server 和 Oracle
我反对内部锯齿的原因是它不利于维护,显然,如果在该部分上方添加新部分,则锯齿会受到打击。
小智 5
考虑使用在WITH
外部具有子查询SELECT
并具有更好的可维护性的语法:
WITH subquery (a, b) AS
(
SELECT x, y FROM whatever
UNION
SELECT z, w FROM something
)
SELECT a, b FROM subquery;
Run Code Online (Sandbox Code Playgroud)
...在 Oracle 11.2 上运行,根据:http : //sqlfiddle.com/#!4/d0b42/2/0
归档时间: |
|
查看次数: |
2618 次 |
最近记录: |