我有一个如下表所示的帖子,
| ID | TITLE | NUMBER_OF_REPEAT
| 1 | post1 | 2
| 2 | post2 | 1
| 3 | post3 | 3
从上表中我需要一个select查询来生成行,具体取决于NUMBER_OF_REPEAT字段。
预期产出,
| ID | TITLE
| 1 | post1
| 1 | post1
| 2 | post2
| 3 | post3
| 3 | post3
| 3 | post3
这种重复也应该支持分页。请帮帮我。
提前致谢。
答案 0 :(得分:0)
我在这里找到了一个可能的答案:SQL: Repeat a result row multiple times, and number the rows。看一下MySQL的SQL小提琴:http://www.sqlfiddle.com/#!2/78f5b/1
所以,这是可能的,但我认为这适用于您的应用程序,而不适用于您的DBMS。
答案 1 :(得分:0)
我认为这不应该由DBMS来做。这可以在程序中做到。 但是你可以创建另一个只有两行的表并与post表连接
让我们说表格有两行。
SELECT ID ,TITLEfrom post, dup
答案 2 :(得分:0)
像这样的东西
create table numbers (number int);
insert into numbers
select 1
union
select 2
union
select 3;
SELECT id, title
FROM tabl
JOIN Numbers
ON tabl.repeater >= Numbers.number
order by id
它很乱,但修改数字表以获得更多重复。