powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / PIVOT
8 сообщений из 8, страница 1 из 1
PIVOT
    #39558337
bas02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как сделать чтоб количество столбцов было динамическим в pivot запросе
например, если кроме 'aaa', 'bbb' может быть любое количество других значений:
SELECT *
FROM (
select 'c1' cc, 1 nom, 'aaa' a from dual union all
select 'c1' cc, 2, 'aaa' from dual union all
select 'c2' cc, 3, 'aaa' from dual union all
select 'c3' cc, 4, 'bbb' from dual union all
select 'c4' cc, 5, 'bbb' from dual
)
pivot (sum(nom) for a in('aaa' as aa, 'bbb' as bb))
...
Рейтинг: 0 / 0
PIVOT
    #39558354
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bas02как сделать чтоб количество столбцов было динамическим в pivot запросе
например, если кроме 'aaa', 'bbb' может быть любое количество других значений:

1) сформировать селект динамически
2) хмл

.....
stax
...
Рейтинг: 0 / 0
PIVOT
    #39558355
все не так просто
...
Рейтинг: 0 / 0
PIVOT
    #39558356
Dshedoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PIVOT динамический, а можно вас погуглить?
...
Рейтинг: 0 / 0
PIVOT
    #39558367
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DshedooPIVOT динамический, а можно вас погуглить?

не понял про погуглить

формируете "'aaa' as aa, 'bbb' as bb " программно

где (как) в дальнейшем собираетесь использовать результат селекта?

.....
stax
...
Рейтинг: 0 / 0
PIVOT
    #39558383
982183
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Говорил же. Раз в неделю этот вопрос возникает

20962930
...
Рейтинг: 0 / 0
PIVOT
    #39558536
bas02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Staxbas02как сделать чтоб количество столбцов было динамическим в pivot запросе
например, если кроме 'aaa', 'bbb' может быть любое количество других значений:

1) сформировать селект динамически
2) хмл

.....
stax
динамически это понятно
а с xml как?
...
Рейтинг: 0 / 0
PIVOT
    #39558553
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bas02а с xml как?
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
SQL> ed
Wrote file afiedt.buf

  1  select * from (
  2     select job,deptno,sal
  3     from emp)
  4  pivot xml
  5  (
  6     sum(sal) s_sal
  7     for deptno in (any) --(select deptno from dept)
  8  )
  9* order by 1
SQL> /

JOB       DEPTNO_XML
--------- ------------------------------------------------------------
ANALYST   <PivotSet><item><column name = "DEPTNO">20</column><column n
          ame = "S_SAL">6000</column></item></PivotSet>

CLERK     <PivotSet><item><column name = "DEPTNO">10</column><column n
          ame = "S_SAL">1300</column></item><item><column name = "DEPT
          NO">20</column><column name = "S_SAL">1900</column></item><i
          tem><column name = "DEPTNO">30</column><column name = "S_SAL
          ">950</column></item></PivotSet>

MANAGER   <PivotSet><item><column name = "DEPTNO">10</column><column n
          ame = "S_SAL">2450</column></item><item><column name = "DEPT
          NO">20</column><column name = "S_SAL">2975</column></item><i
          tem><column name = "DEPTNO">30</column><column name = "S_SAL
          ">2850</column></item></PivotSet>

PRESIDENT <PivotSet><item><column name = "DEPTNO">10</column><column n
          ame = "S_SAL">5000</column></item></PivotSet>

SALESMAN  <PivotSet><item><column name = "DEPTNO">30</column><column n
          ame = "S_SAL">5600</column></item></PivotSet>



.....
stax
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / PIVOT
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]