CREATE PROCEDURE [dbo].[GetAllLocations]
AS
BEGIN
SET NOCOUNT ON;
SELECT DISTINCT [Location] from Emp WHERE [Location] IS NOT NULL;
END
我需要一个存储过程,该存储过程将从一个选择查询中提取结果,然后需要向该查询添加2个其他结果。我不想将两个额外的结果插入到一个表中,而只想对其进行“硬编码”。
因此,基本上上述查询具有以下结果:
New York
Kansas
California
New Mexico
我想手动将缅因州和佛罗里达州添加到该列表中,但是我不想将那些记录添加到该查询中的“ Emp”表中。我假设某种临时表可以完成这项工作,但我无法在线找到任何解决方案,而且我对临时表不熟悉。
您可以使用union
,例如:
SELECT [Location]
FROM Emp
WHERE [Location] IS NOT NULL
UNION -- on purpose to remove duplicates
SELECT Location
FROM (VALUES ('Maine'), ('Florida')) v(Location);
就是说,我认为没有必要将其设置为存储过程。您应该使其成为视图或用户定义的表函数。也就是说,可以在SELECT
查询内部使用代码。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句