我有一个包含2列的表名称为字符串,数量为整数我需要每个记录的数量X例如数量字段
Name | Qty
-----------
Dave | 25
Nathan | 10
Chaim | 8
我需要来自Nathan 10和chaim 8的Dave 25条记录
答案 0 :(得分:2)
不确定此要求的用例,但您可以借助数字表来完成此操作。我使用下面的master..spt_values
进行演示,但您应该使用one of the techniques in this answer创建一个永久的。{/ p>
;WITH T(Name,Qty) AS
(
SELECT 'Dave',25 union all
SELECT 'Nathan',10 union all
SELECT 'Chaim',8
), Numbers AS
(
SELECT number
FROM master..spt_values
WHERE type='P' AND number > 0
)
SELECT Name
FROM T
JOIN Numbers ON number <= Qty