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

Откуда:
Сообщений: 3659
Тест-кейс:
SQL> create table atab as select rownum id from dual connect by level < 10;
 
Table created
 
SQL> select * from atab where 5<id order by id desc;
 
        ID
----------
         9
         8
         7
         6
 
SQL> select length('select * from atab where 5<id order by id desc') cmd_len from dual;
 
   CMD_LEN
----------
        46
 
SQL> 

Возможно ли написать SQL-запрос, возвращающий аналогичный результат, и при это имеющий длину менее 46 символов? Если да, то какую минимальную длину может иметь такой запрос?
23 янв 08, 14:39    [5192222]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
ГостЪ
Guest
точно можно - order by 1 desc :)
что значит аналогичный? те же цифирки в том же порядке?
23 янв 08, 14:42    [5192242]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
by id desc ==> by 1 desc
23 янв 08, 14:43    [5192254]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
ГостЪ
Guest
order by -id
23 янв 08, 14:44    [5192261]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 116252
Хи хи

order by -id :-)
23 янв 08, 14:45    [5192269]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
iV@n
Member

Откуда:
Сообщений: 382
select * from -> select*from
23 янв 08, 14:48    [5192300]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 116252
RA\/EN, а Вы что то недавно про использование индекса для сортировки говорили ?

Не входит ли в решение предварительное

create index idx_atab_desc on atab(id desc)
?

23 янв 08, 15:00    [5192411]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
ГостЪ
Guest
dmidek
RA\/EN, а Вы что то недавно про использование индекса для сортировки говорили ?

Не входит ли в решение предварительное

create index idx_atab_desc on atab(id desc)
?



А может функцию p :)?
select*from table(p)

аналогичный - такое гибкое понятие:)
23 янв 08, 15:09    [5192486]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
RA\/EN
Member

Откуда:
Сообщений: 3659
dmidek
RA\/EN, а Вы что то недавно про использование индекса для сортировки говорили ?

Не входит ли в решение предварительное

create index idx_atab_desc on atab(id desc)
?


Не, индекс не входит :)
Можно еще сократить
23 янв 08, 15:11    [5192506]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
-пробел
by-id
23 янв 08, 15:12    [5192516]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
ГостЪ
Guest
т.е. пока что дошли до:

select*from atab where id>5order by-id
23 янв 08, 15:17    [5192549]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
ss145
Member

Откуда:
Сообщений: 19
select*from atab where id in(6,7,8,9)
23 янв 08, 15:29    [5192615]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 116252
ss145
select*from atab where id in(6,7,8,9)


Уверены, что сортировка будет проведена, как Вы желаете ?
23 янв 08, 15:30    [5192625]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
test_2008
Member

Откуда: Москва
Сообщений: 1209
Если DDL не входит в длину то:
              create view t as select * from atab where 5<id order by id desc;



             select * from t


Короче наверное уже и нельзя
23 янв 08, 15:31    [5192632]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
ss145
Member

Откуда:
Сообщений: 19
dmidek
ss145
select*from atab where id in(6,7,8,9)


Уверены, что сортировка будет проведена, как Вы желаете ?

точно, не уверен ))
23 янв 08, 15:32    [5192641]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
Дубовая голова
Member [заблокирован]

Откуда: с цепи сорвался
Сообщений: 1821
test_2008
Короче наверное уже и нельзя


SQL> select*from t
  2  /

         X          Y
---------- ----------
         1
         2
         3          1

:-)
23 янв 08, 15:34    [5192647]     Ответить | Цитировать Сообщить модератору
 Re: НЕДОпятничная задача  [new]
RA\/EN
Member

Откуда:
Сообщений: 3659
ГостЪ
т.е. пока что дошли до:

select*from atab where id>5order by-id

Вот теперь нашелся победитель 38 символов.
23 янв 08, 15:44    [5192728]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить