使用select为查询结果添加行

64 sql t-sql sql-server select insert

是否可以使用这样的文字扩展查询结果?

select name from users
union
select name from ('JASON');
Run Code Online (Sandbox Code Playgroud)

要么

select age, name from users
union
select age, name from (25,'Betty');
Run Code Online (Sandbox Code Playgroud)

所以它返回表中的所有名称加'JASON'或(25,'Betty').

Qua*_*noi 82

你这样使用它:

SELECT  age, name
FROM    users
UNION
SELECT  25 AS age, 'Betty' AS name
Run Code Online (Sandbox Code Playgroud)

使用UNION ALL允许重复:如果有一个25岁的贝蒂用户中,第二个查询不会再次与单纯的选择了UNION.

  • @Alex:在 SQL Server 和 PostgreSQL 中,您可以执行“SELECTage, name FROM users UNION SELECT * FROM (VALUES (25, 'Betty'), (26, 'Fatty')) q(age, name)` (2认同)

Mar*_*tta 18

在SQL Server中,您会说:

Select name from users
UNION [ALL]
SELECT 'JASON'
Run Code Online (Sandbox Code Playgroud)

在Oracle中,你会说

Select name from user
UNION [ALL]
Select 'JASON' from DUAL
Run Code Online (Sandbox Code Playgroud)

  • 这里ALL的括号表示它是一个可选元素. (4认同)

Amy*_*y B 14

是否可以使用这样的文字扩展查询结果?

是.

Select Name
From Customers
UNION ALL
Select 'Jason'
Run Code Online (Sandbox Code Playgroud)
  • 使用UNION添加贾森如果不是已经在结果集.
  • 使用UNION ALL添加杰森不论是否是已经在结果集.