按行中的值多次重复结果行

Repeat a result row multiple times by value in row

我有一个关于 sql 查询的问题。 我想复制一行具有相同的值, 行数必须与数量的值相同

示例我有 1 个这样的数据

Item  ItemName   Quantity
B100  Mouse      10

但我想成为这样的人

Item  ItemName   Quantity
B100  Mouse      10
B100  Mouse      10
B100  Mouse      10
B100  Mouse      10
B100  Mouse      10
B100  Mouse      10
B100  Mouse      10
B100  Mouse      10
B100  Mouse      10
B100  Mouse      10

你能帮帮我吗

先致谢

创建一个 numbers table 然后用它做一个 CROSS JOIN

select Item , ItemName ,  Quantity
from yourtable A
cross join (select num from numbers) b
where a.Quantity <= b.num

要在 Mysql 中生成序列号,请检查以下答案

  • generate an integer sequence in MySQL
  • Generating a range of numbers in MySQL