Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Нарисовать треугольник при помощи CTE  [new]
Георгий Русанов
Member

Откуда:
Сообщений: 1
Здравствуйте,
прохожу упражнения на hackerrank.com
Там есть задание сделать вот такую картинку
* * * * *
* * * *
* * *
* *
*

Мое решение:
with cte as (
select 20 i
union all
select i - 1 from cte where i > 1
)
select replicate('* ', i) from cte;

Выдает ошибку :
union all
*
ERROR at line 3:
ORA-00923: FROM keyword not found where expected

Я понимаю, что нужно select 20 i сделать from какая- то таблица, но не понимаю из какой.
Просто на MSSQL и так принимает, а вот на Oracle ошибка.
8 июн 18, 17:18    [21479796]     Ответить | Цитировать Сообщить модератору
 Re: Нарисовать треугольник при помощи CTE  [new]
SY
Member

Откуда: Middlebury, CT USA
Сообщений: 10051
SQL> with cte(i) as (
2 select 20 from dual
3 union all
4 select i - 1 from cte where i > 1
5 )
6 select lpad('*',i,'*') from cte
7 order by i desc
8 /

LPAD('*',I,'*')
---------------------------------------------------------------
********************
*******************
******************
*****************
****************
***************
**************
*************
************
***********
**********
*********
********
*******
******
*****
****
***
**
*

20 rows selected.

SQL>

SY.

Сообщение было отредактировано: 8 июн 18, 18:07
8 июн 18, 18:00    [21479909]     Ответить | Цитировать Сообщить модератору
 Re: Нарисовать треугольник при помощи CTE  [new]
MaximaXXL
Member

Откуда: Киев
Сообщений: 652
Георгий Русанов,

Или так:
select lpad('*',level,'*') 
from dual 
connect by level <= 20
order by level desc
8 июн 18, 18:47    [21479991]     Ответить | Цитировать Сообщить модератору
 Re: Нарисовать треугольник при помощи CTE  [new]
-2-
Member

Откуда:
Сообщений: 15330
https://www.sql.ru/forum/811183/novogodnyaya-yolka-i-oracle
8 июн 18, 19:08    [21480022]     Ответить | Цитировать Сообщить модератору
 Re: Нарисовать треугольник при помощи CTE  [new]
SY
Member

Откуда: Middlebury, CT USA
Сообщений: 10051
MaximaXXL
Или так


Toпик: " Нарисовать треугольник при помощи CTE"

SY.
8 июн 18, 19:24    [21480040]     Ответить | Цитировать Сообщить модератору
 Re: Нарисовать треугольник при помощи CTE  [new]
Elic
Member

Откуда:
Сообщений: 29990
SY
Toпик: " Нарисовать треугольник при помощи CTE"
В Oracle-е нет его.
9 июн 18, 07:23    [21480812]     Ответить | Цитировать Сообщить модератору
 Re: Нарисовать треугольник при помощи CTE  [new]
SY
Member

Откуда: Middlebury, CT USA
Сообщений: 10051
Elic
В Oracle-е нет его.


Ну да, и в Америке нет космонавтов а в Pоссии астронавтов .

SY.
9 июн 18, 14:55    [21482127]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить