2016-07-26 2 views
1

У меня есть две колонки в таблице:SQL запрос для отображения количества

Item name quantity 
--------------------- 
A    5 

хотите отобразить это как:

Item name quantity 
--------------------- 
A    1 
A    1 
A    1 
A    1 
A    1 
+1

Пожалуйста, пост RDBMS и версию вы используете – vercelli

+0

Какую базу данных вы используете? Пожалуйста, отметьте соответствующим образом. –

+0

Какова логика для каждой строки? Если у вас есть количество 10, то вам нужно 'A 1' 10 раз? – Utsav

ответ

4

Позвольте предположить, у вас есть таблица чисел, которая имеет один столбец, который целое число (один может быть легко генерируются в большинстве баз данных):

select t.item_name, 1 as quantity 
from t join 
    numbers n 
    on t.quantity <= n.n; 

Например:

select t.item_name, 1 as quantity 
from t join 
    (select 1 as n union all select 2 union all select 3 union all select 4 union all select 5 
    ) n 
    on t.quantity <= n.n; 
1

Если вы используете Oracle, попробуйте следующее:

SELECT i_name, 1 FROM 
    (SELECT 'A' i_name, 5 qty FROM dual) 
CONNECT BY LEVEL <= qty; 
Смежные вопросы