Я пытаюсь создать несколько строк на основе значения в столбце моей таблицы. Мне нужно, чтобы количество строк было в три раза больше данных в столбце. В настоящее время у меня есть так, что он повторяет количество строк на основе значения в столбце, но я не могу разобраться, как заставить его выполнить в три раза больше значения в столбце. Вот мой код:Повторить строки на основе умножения значения поля
WITH tmp as (SELECT 1 as rn UNION ALL SELECT rn+1 from tmp WHERE rn<=1000)
SELECT
[SURNAME],
[NAME],
[AGE],
[PAYMENT DAYS PER/WK]
FROM
[PublishedReporting].[dbo].[Sheet1$]
LEFT JOIN (SELECT * FROM tmp WHERE rn<=50) as
rowgen on [PAYMENT DAYS PER/WK] >= rowgen.rn
WHERE
[PAYMENT DAYS PER/WK] IS NOT NULL
ORDER BY
SURNAME,
NAME
option (maxrecursion 32767);
Вот пример из моих результатов: Так вот он показывает 3 строки для Люси Адамс, но мне это нужно, чтобы показать 9
Благодарности
Спасибо за ответ, но он дает те же результаты, что и мой запрос. – Will
. Я получил его, используя вариацию вашего ответа, поэтому спасибо – Will