powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / новогодняя ёлка - и Oracle :)
16 сообщений из 16, страница 1 из 1
новогодняя ёлка - и Oracle :)
    #36993633
zindur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вдохновением - идеей одного форума :) да и скоро празники :) плюс пятница :) - вот с помощю DML нарисовал ёлку:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
with t1 as (
select level as lev
,rpad(chr( 32 ), 20 -level,chr( 32 ))||lpad('|',level,'*') || lpad(chr( 32 ),level,'*') as elka
from dual tb1
connect by level <=  20 
),
t2 as (
select
case
when
nvl2(prior t1.elka, 1 ,- 1 ) = - 1  and connect_by_root lev <>  1 
then
lpad(chr( 32 ),(( 13 -level+ 4 ) - (level *  3 ))- connect_by_root lev ,chr( 32 ))
||'o '|| lpad(chr( 32 ),level+ 4 ,chr( 32 ))
||trim(t1.elka||lpad(t1.elka,level +  4 ,chr( 32 )) || 'o')
else
t1.elka
end as christmas_tree
from t1
where level <=  5 
connect by prior t1.lev +  2  = t1.lev
)
select *
from t2
where rownum <=  50  

может ещё у кого-то есть свои идеи :) ?

PS: для напряжённых и переживающих: минусы кода знаемс, главное фантазия :)
PS2: Use Only Fixed-Widh Fonts
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993639
bdsm_sql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993647
SQLap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
типа наспех

Код: plaintext
1.
select lpad('*',  17 -rownum, ' ')||lpad('*', rownum, '*') from
(select  1  from dual group by cube( 1 , 1 , 1 , 1 ))
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993672
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zindurPS2: Use Only Fixed-Widh Fonts
Код: plaintext
1.
set pagesize  54 
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993676
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993690
bdsm_sql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT m FROM dual
MODEL
DIMENSION BY ( 0  d)
MEASURES (CAST(NULL AS VARCHAR2( 200 )) m,  0  n)
RULES ITERATE( 20 ) (
  n[iteration_number] = TRUNC(dbms_random.value *  15  +  3 ),
  m[iteration_number] = REPLACE(LPAD(' ',  20  - iteration_number, ' ')
    || LPAD('*', iteration_number, '*') || DECODE(iteration_number,  0 , 'A', '|')
    || LPAD('*', iteration_number, '*'), LPAD('*', n[iteration_number], '*'),
       LPAD('*', n[iteration_number] -  1 , '*') || 'O')
)
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993694
zindur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
orawish,

упс, не знал - спасибо :)
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993724
ы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ы
Гость
SQLap,

что вы тут со своими парусами лезете на Новый Год?
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993760
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zindur,

Чего-то много текста
Код: plaintext
1.
2.
3.
select lpad(rpad('*', mod(level- 1 ,  5 )* 3 + 1 ,'*'), 15 )||'|'||reverse(lpad(rpad('*', mod(level- 1 ,  5 )* 3 + 1 ,'*'), 15 ))
from dual
connect by level<= 24 
;
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993783
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zindurorawish,

упс, не знал - спасибо :)
на здоровье :)
можно продолжить (в меру фантазии и мироощущения всё равно у каждого получится немножко своя )
Код: plaintext
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> set pagesize  0 
SQL> with t as (select ' '||dbms_random.string('X',case when level <  5 
   2                                             then level- 1 
   3                                             else level- 1  - mod( level, 3 )* 2  end) s
   4                from dual
   5             connect by level <  30  )
   6   select lpad(regexp_replace(s,'[^O]','/'), 40 )||'|'||regexp_replace(s,'[^A*]','\') e
   7     from t;
                                       /|\
                                      //|\\
                                     /O/|\\\
                                    ////|\\\\
                                       /|\
                                  //////|\\\\\\
                                   /////|\\\\\
                                    ////|\\\\
                               /////////|\\\\\\\\\
                                ////////|\\\\\\\\
                                 ///////|\\\\\\\
                            ////////O///|\A\\\\\\\\\\
                             ///////////|\\\\\\\\\\\
                              //////////|\\\\\\\\\\
                         //////////////O|\\\\\\\A\\\A\\\
                          //////////////|\\\A\A\\\\\\\\
                           /////////////|\\\\\\\\\\\\\
                      //////////////////|\\\\\\\\\\\\\\\\A\
                       /////////////////|\\\\\\\\\\\\\\\\\
                        ////////////////|\\\\\\\\\\\\\\\\
                   /////////////O//O////|\\\\\\\A\\\\\\\\\\\\\
                    ////////////////////|\\\\\\\\\\\\\\\\\\\\
                     ///////////////////|\\\\\\\\\\\\\\\\\\\
                ////////////////////////|\\\\\\\\\\\\\\\\\\\\\\\\
                 //////////////////O////|\\\\\\\\\\\\\\\\\\\\\\\
                  ////////////O/////////|\\\\\\\\\\\\\\\\\\\\\\
             ///////////////////////////|\\\\\\\\\\\\\\\\\\\\\\\\\\\
              //////////////////////////|\\\\\\\\\\\\\\\\\\\\\\\\\\
               /////////////////////////|\\\\\\\\\\\\\A\\\\\\\\\\\
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36993951
zindur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-zindur,

Чего-то много текста

ага :)
так и знал что кто-та заценит :)

извините так получилось :) задумал одно - решил сделать другое - и проста тупо копировал / добавлял ;)
над красотой кода не задумывался - хотел побыстрее получить результат - да и план построения ёлки не смотрел ;)
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36994107
SQLap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ыSQLap,

что вы тут со своими парусами лезете на Новый Год?

Абстрактного уровня мышления у тебя хватило, чтобы постить тут под сереньким.
Уже похвально, но все же стоит развивать его дальше.
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36994206
Фотография RA\/EN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
orawish,

А игрушки почему не перемешаны? Непорядок!
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36994427
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RA\/ENorawish,

А игрушки почему не перемешаны? Непорядок!
ну я же говорю - у каждого своя :)
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36994454
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RA\/EN,
а, пожалуй, эстетичнее если перемешать

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
set pagesize  0 
with t as (select ' '||dbms_random.string('X',case when level <  5 
                                          then level- 1 
                                          else level- 1  - mod( level, 3 )* 2  end) s
             from dual
          connect by level <  30  )
select translate(lpad(regexp_replace(s,'[^AB]','/'), 40 )||'|'||regexp_replace(s,'[^CD]','\'),'ABCD','OAOA') e
  from t;

Код: plaintext
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.
                                       /|\
                                      /O|\\
                                     ///|\\\
                                    ////|\\\\
                                       /|\
                                  //////|\\\\\\
                                   /////|\\\\\
                                    ////|\\\\
                               //////O/O|\\\\A\\\\
                                ////////|\\\\\\\\
                                 ///////|\\\\\\\
                            //A////O////|\\\\A\\\\\\\
                             ///////////|\\\\\\\\\\A
                              //////////|\\\\A\\\\\
                         ///////O///////|\\\\\\\\\\\\\\\
                          //////////////|\\\\\\A\\\\\\\
                           ///A/O///////|\\\\\\\O\A\\\
                      ////////////////O/|\\\\\\\\\\\O\\\\\\
                       /////////////////|\\\\\\\\\\\\\\O\\
                        //////////A/////|\\\\\\\A\\\\\\\\
                   /////////////////////|\\A\\\\\\\\\\\\\\\\O\
                    /////OA/O///////////|\\\\A\\\\\\\\\\\\O\\
                     ///////////////////|\\\\\\\\\\\\\\O\A\\
                ////////////////////////|\\\\\\\\\\\\A\\\\\\\\\\\
                 ///A///////////////////|\\\\\\A\\\\\\\\\\\\\\\\
                  /O///////O////////////|\\\\\\\\\\\\\\\\\\\\\\
             //A////////////////////////|\\\\\\\\\\\\\\\\\\\\\\\\\A\
              //////////////////A/A/////|\\\\\\\\\\\\\\\\\\\\\\\\\\
               //////O//////////O///////|\\\\\\\\\\\\\\\\\\\\\\\\\
...
Рейтинг: 0 / 0
новогодняя ёлка - и Oracle :)
    #36994472
ы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ы
Гость
SQLap,

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


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