Существует следующая таблица под названием P_FAMILIA
:
|ID | NAME | SOLDADOS |
|---|------------|------------|
| 1 | Stark | 30000 |
| 2 | Targaryen | |
| 3 | Lannister | 15000 |
| 4 | Greyjoy | |
При выполнении следующего запроса
SELECT F.NAME
FROM P_FAMILIA F
я получил
| NAME |
|------------|
| Stark |
| Targaryen |
| Lannister |
| Greyjoy |
Я хочу отобразить результат запроса следующим образом:
| NAME |
|---------------------------------|
|Stark,Targaryen,Lannister,Greyjoy|
Обновлять
Попробуйте загрузить схему на http://sqlfiddle.com/ , но у приложения возникают проблемы, когда выбран движок " Oracle 11g R2
"
Схема:
-- Crear tabla
CREATE TABLE P_FAMILIA
(
ID INT,
NAME VARCHAR2(30 BYTE),
SOLDADOS FLOAT(126)
);
-- Llave primaria
ALTER TABLE P_FAMILIA
ADD PRIMARY KEY (ID);
-- Insert Statements
Insert into P_FAMILIA
(ID, NAME, SOLDADOS)
Values
(1, 'Stark', 30000);
Insert into P_FAMILIA
(ID, NAME)
Values
(2, 'Targaryen');
Insert into P_FAMILIA
(ID, NAME, SOLDADOS)
Values
(3, 'Lannister', 15000);
Insert into P_FAMILIA
(ID, NAME)
Values
(4, 'Greyjoy');
COMMIT;
Я понимаю, что из приведенного вами примера вы ищете следующее:
Если нет, то прошу подробно описать, чем это не похоже на то, что вы просите.
Кстати, Oracle LiveSQL работает, если вы хотите протестировать и поделиться.
Следующее должно работать:
Добрый день,
Чтобы иметь возможность конкатенировать значения строк
Вы можете использовать функцию для возврата сгруппированных данных или анонимного блока:
Или вы можете использовать аналитические функции "ОПЕРЕЖЕНИЕ" или "ОТСТАВАНИЕ"
Это должно работать (пример запроса):
Это покажет:
ВЕРСИЯ
Вы можете попробовать это:
Результат