У меня есть набор данных в базе данных SQL Server, и я хотел бы составить список, выполнить запрос для вывода списка записей из таблицы, несколько раз в соответствии с соответствующим целочисленным значением в столбце этой таблицы.
Я видел много постов о многократном перечислении записи в запросе, причем большинство наиболее подходящих ответов описывает решение, включающее перекрестное соединение.Однако ситуация, которую я описываю, немного отличается от того, что я видел.
Структура таблицы записей похожа на следующую:
+-----+-------+------+------+
| id | name | type | num |
+-----+-------+------+------+
| 1 | bob | red | 1 |
+-----+-------+------+------+
| 2 | sam | blue | 3 |
+-----+-------+------+------+
| 3 | viv | green| 2 |
+-----+-------+------+------+
Я быхотелось бы отобразить это в результате запроса следующим образом ...
+-----+-------+------+
| id | name | type |
+-----+-------+------+
| 1 | bob | red |
+-----+-------+------+
| 2 | sam | blue |
+-----+-------+------+
| 2 | sam | blue |
+-----+-------+------+
| 2 | sam | blue |
+-----+-------+------+
| 3 | viv | green|
+-----+-------+------+
| 3 | viv | green|
+-----+-------+------+
... где каждая запись появляется несколько раз в соответствии с номером, указанным в исходной строке.(Боб * 1, Сэм * 3, Вив * 2)
Возможно ли это с помощью перекрестного соединения или любого другого метода?
Примечание: Это не обязательно должно быть очень эффективно.