mysql - 如何重复行?

标签 mysql sql select

我的表数据:

ID      |   PRODUCT_NAME | QUANTITY
1       |   PRODUCT_1    | 3
2       |   PRODUCT_2    | 2
3       |   PRODUCT_3    | 1
4       |   PRODUCT_4    | 3
5       |   PRODUCT_5    | 6
6       |   PRODUCT_6    | 7
7       |   PRODUCT_7    | 10
8       |   PRODUCT_8    | 15
9       |   PRODUCT_9    | 12
10      |   PRODUCT_10   | 25

当我进行选择查询时,我需要结果:

1       |PRODUCT_1
1       |PRODUCT_1
1       |PRODUCT_1
2       |PRODUCT_2
2       |PRODUCT_2
3       |PRODUCT_3
4       |PRODUCT_4
4       |PRODUCT_4
4       |PRODUCT_4
5       |PRODUCT_5
5       |PRODUCT_5
5       |PRODUCT_5
5       |PRODUCT_5
5       |PRODUCT_5
5       |PRODUCT_5

我该怎么做?

最佳答案

创建另一个表并向其中插入 1 到 25 之间的整数。

CREATE TABLE INTEGERS ( N INT PRIMARY KEY);
INSERT INTO INTEGERS VALUES (1), (2), ... (25);

现在您可以将其加入到您的表格中,如下所示:

SELECT id, product_name
FROM MyTable
JOIN INTEGERS ON MyTable.quantity >= INTEGERS.N

关于mysql - 如何重复行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58156827/

相关文章:

MySQL 查询返回多个求和和分组列

sql - 如何在 MS ACCESS 中使用与 Oracle Rownum 相同的功能

sql - 分析大图 - 检索簇并计算最强路径

javascript - 将 FileReader 与选择输入一起使用

css - 如何防止选择图像的边

mysql - 所有数据库表中 CreatedDate 和 ModifiedDate 列的优缺点

mysql - Ubuntu mysql崩溃-InnoDB:无法为缓冲池分配内存

MYSQL:为表中的每个供应商选择三个最低价格

php - 将图像从其路径插入到 mysql 并使用 php 将其检索到 <img> 标记中

MySQL根据特定字段值和行数选择多行