|
|
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Знает ли кто нить, какой нить фокус чтобы: SELECT ID FROM MY_TAB все ID вывел одной строкой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 11:49 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Элементарно Ватсон Пишешь sql функцию которая конкатенирует результат курсора в одну строку и возвращает его в сиквел стейтмент И никаких фокусов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 11:52 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Также еще можно поискать по stragg (начиная с девятки) Тынц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 11:53 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
хе :) а без функции? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 11:54 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
rgarifхе :) а без функции? Совсем без функции - никак. А с групповой - см. мой предыдущий пост. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 11:55 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
rgarifа без функции?Но через ж... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 12:19 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Elic Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. а как прспособить к более сложному случаю: Код: plaintext 1. 2. 3. 4. 5. должно получиться: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 13:01 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Анонима как прспособить к более сложному случаю: Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. На строках при NLS_SORT<>BINARY не исключаю нехороших нюансов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 13:45 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
для коллекции: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2006, 16:35 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Аноним а как прспособить к более сложному случаю: Код: plaintext 1. 2. 3. 4. 5. должно получиться: Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2006, 16:40 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
К сожалению, приведённый выше пример с sys_xmlagg пересортирует строки. Есть ли возможность склеить строки предварительно отсортировав их по полю T$LFD2 в приведённом ниже примере:? Код: plaintext 1. 2. 3. 4. 5. РS: подзапрс с сортировкой не помогает РРS: оракул 9.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2006, 17:31 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Млин неужель никто не добил за год? Пришлось самому ковыряться 1,5 часа, т.к. я с XML никогда дело не имел Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Oracle 9i ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2007, 16:48 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
RevesМлин неужель никто не добил за год?Вы серьезно? :) RevesПришлось самому ковыряться 1,5 часа, т.к. я с XML никогда дело не имелНу тоже в общем неполохо :) Познакомиться с новым синтаксисом никогда не вредно :) Можно ещё попробовать найти автора и подарить ему результат :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2007, 16:54 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
JannnyВы серьезно? :) Эт, я чет поторопился - Order by не работает в данном контексте, но сортируется всё правильно. Надо ишо год подумать :) JannnyМожно ещё попробовать найти автора и подарить ему результат :) Я думаю он уже решил свою проблему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2007, 17:08 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
rgarif, нужно иметь одну функцию для таких случаев create or replace function c2s(c sys_refcursor,dlm varchar2:=',') return varchar2 is res varchar2(4000); rs varchar2(2000); begin -- open c; loop fetch c into rs; exit when c%notfound; res:=res||dlm||rs; end loop; close c; return substr(res,length(dlm)+1); end c2s; select c2s(cursor(select to_char(id) from my_table /*oder,group,...*/)) from dual; В SQL больше 4000 не дает, если надо больше в функции res clob. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2008, 18:08 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
bde_dnrgarif, нужно иметь одну функцию для таких случаевПривет, гробокопатель!!! Ты и в правду думаешь, что rgarif три года сидит и ждет от тебя ответа??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2008, 07:28 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
зато я получила ответ:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2008, 12:44 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Katya_83зато я получила ответ:)Для этого вполне достаточным было прочитать местный ТОП популярных вопросов ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2008, 13:41 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Ales ProtivАноним а как прспособить к более сложному случаю: Код: plaintext 1. 2. 3. 4. 5. должно получиться: Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. подскажите, как для данного примера сделать сотрировку по VALUE внутри CLOB ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2009, 15:10 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
nxxкак для данного примера сделать сотрировку по VALUE Разуй глаза :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2009, 15:17 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Elicnxxкак для данного примера сделать сотрировку по VALUE Разуй глаза :) авторSQL> select o.owner 2 ,sys_xmlagg(xmlelement( "QWER", xmlagg( xmlelement("COL", o.object_name || ',') Order by o.obj ect_name 3 ) 4 ) 5 ).extract('ROWSET/QWER/COL/text()').getclobval() 6 from all_objects o 7 where rownum < 10000 8 group by o.owner 9 / select o.owner * ERROR at line 1: ORA-00937: not a single-group group function что-то не работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2009, 15:50 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
nxx что-то не работает Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2009, 11:03 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Есть есть три таблицы, TABLE1, TABLE2, TABLE3. USERS ID NUMBER(20) NAME VARCHAR2(64) RIGHTS ID NUMBER(20) USER_ID NUMBER(20) GROUP_ID NUMBER(20) GROUPS ID (NUMBER(20) NAME VARCHAR(20) Как сделать такой запрос Код: plaintext 1. 2. 3. чтобы значения поля GROUPNAME там, где USERNAME совпадает писались не в несколько строк, а через запятую? чтобы названия групп выводились в одну строку через запятую? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2010, 20:47 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. For example: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2010, 21:26 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
SY, Для верности еще результат завернуть бы в dbms_xmlgen.convert(<expr>,1), чтобы не получать всякие lt,gt,amp ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2010, 10:57 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
А без сортировки такое можно сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2010, 13:15 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
так как топик в FAQе, добавлю: начиная с версии 11.2 субд появилась прекрасная родная sql-функция, которая позволяет это делать LISTAGG : Код: plsql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2013, 12:22 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
evs-ru, LISTAGG ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2013, 16:21 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Shredder2003, блин, не посмотрел на вторую страницу ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2013, 16:22 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Shredder2003прекраснаяс одного боку прерасная. а с другого пресиняя - не поддерживет клоб и distinct ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2013, 19:20 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
-2-Shredder2003прекраснаяс одного боку прерасная. а с другого пресиняя - не поддерживет клоб и distinctорацл любит такое :) создаст новую прекрасную фишку со многими пресиними ограничениями и потом пару версий выргебает пример: добавили в 8 версии connect by и только в 9-ой order sibling и только в ещё более старших sys_connect_by_root и nocycle ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2013, 19:39 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
-2-с одного боку прерасная. а с другого пресиняя - не поддерживет клоб и distinct Да еще и ORDER BY требует, да и сортирует сволочь добавляя LISTAGG выражение к ORDER BY: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2013, 19:48 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
SYда и сортирует сволочь добавляя LISTAGG выражение к ORDER BY А вот это уже безобразие. Никто ж не просил ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2013, 19:52 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
andreymxдобавили в 8 версии connect by и только в 9-ой order sibling и только в ещё более старших sys_connect_by_root и nocycleТы не в теме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2013, 19:57 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
А как этот listagg по скорости? Потому как в 9-ке в pl-SQL обычное склеивание в курсоре раза в два быстрее, чем UDAF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2013, 23:12 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
andreymxА как этот listagg по скорости? Потому как в 9-ке в pl-SQL обычное склеивание в курсоре раза в два быстрее, чем UDAFЛишь бы побольше чего-нибудь понаписать, а пусть-бы-и-глупостей-лишь-бы-постов? Не стыдно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2013, 00:03 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
палеонтологandreymxА как этот listagg по скорости? Потому как в 9-ке в pl-SQL обычное склеивание в курсоре раза в два быстрее, чем UDAFЛишь бы побольше чего-нибудь понаписать, а пусть-бы-и-глупостей-лишь-бы-постов? Не стыдно?и чего ты предлагаешь мне стыдиться? Вопроса о производительности функции? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2013, 00:21 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
andreymxи чего ты предлагаешь мне стыдиться?Абсолютным невладением вопросом версионнозависимости фич иерархических запросов. А касательно listagg, какая тебе, нафиг, разница с твоей-то девяткой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2013, 00:46 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
Логопалеонт, ну, тогда скажи, в какмх версиях появились sibling и sys_connect_by_root. Буду рад просветиться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2013, 01:04 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
andreymxну, тогда скажи, в какмх версиях появились sibling и sys_connect_by_root. Буду рад просветитьсяНеужели в доке забанили? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2013, 01:34 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
SY Код: plsql 1. 2. 3. 4. 5. For example: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. SY. Я дико извиняюсь, но Код: plsql 1. 2. 3. 4. в случае, если хотим выводить значения по порядку следования. Правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2015, 19:22 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
evgenius_b, Уже давно существует еще пару-тройку других решений через XML (без XMLAGG), но тебе принципиально было зацепится за медленный XMLAGG, который на длинных строках легко падает с Код: plsql 1. и вообще может быть рассмотрен скорее как баловство даже для работы с XML. evgenius_bЯ дико извиняюсьЭту тему у тебя хватило мозгов откопать а в доку заглянуть нет? PS. После таких подъемов тем начинаешь поддерживать, что гробокопательство полностью запрещено на community.oracle.com. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2015, 20:39 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
SY Код: plsql 1. 2. 3. 4. 5. SY. Как для такого примера получить distinct g.name в результирующем списке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2015, 14:59 |
|
||
|
Результат SELECT-а в одну строку
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopУже давно существует еще пару-тройку других решений через XML (без XMLAGG), но тебе принципиально было зацепится за медленный XMLAGG, который на длинных строках легко падает с Код: plsql 1. Немного раскрою тему. Если возникла необходимость клеить клобы и вместо UDAG хочется использовать collect + UDF для склейки элементов коллекции, то может возникнуть неожиданность 11.2.0.1, 12.1.0.2 Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Если клеить XMLAGG, то может перестать работать из-за лимитов 11.2.0.1 Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 12.1.0.2 Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Теперь меняем имя тега (для 1977 и без этого все хорошо) Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Если использовать xmlquery + string-join 11.2.0.1 Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 12.1.0.2 Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2016, 03:20 |
|
||
|
|

start [/forum/topic.php?all=1&fid=52&tid=1887262]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
181ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 482ms |

| 0 / 0 |
