如何将任意字符串列表转换为SQL行集?

Jim*_*ley 1 sql t-sql sql-server

我有一个简单的字符串列表,可能是任意长度.我希望能够使用这个字符串列表,因为我会使用行集.有问题的应用程序正在针对SQL Server运行.

更清楚一点,如果我这样做,SELECT 'foo', 'bar', 'baz'我会把'foo','bar'和'baz'作为一行中的字段.我想将它们中的每一个看作一个单独的行.

是否存在我缺少的SQL(或SQLServer特定的)函数或技术,或者我将不得不求助于使用外部脚本语言编写函数?

Aak*_*shM 5

那么,作为一种'技术'就是这样

SELECT 'foo'
UNION ALL
SELECT 'bar'
UNION ALL
SELECT 'baz'
Run Code Online (Sandbox Code Playgroud)

(这ALL是为了涵盖你的一些字符串是相同的情况 - UNION不会ALL删除重复); 但是如果不了解你的情况,很难说这是否是你需要的......