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

Откуда: Chicago ,IL
Сообщений: 146
U menya 2 vopros (baza Oracle 10g)

1. Mojet kto podskajet kak proverit format dati. V selecte nujen noviy stolbec kotoriy pronimayet znacheniye 'da' yesli format my_date 'YYYYMMDD' inache 'net'

Primer
select my_date, decode(reg_exp(my_date, "poka ne znayu chto tut doljno bit"), 1, 'da', 'net') from my_table

Ya dumayu pri izpolzovanii to_char s formatirovaniyem select provalitsa na nepravilnoy date. Yest li u kogo kakiye soobrajeniye? Mojet legche proverit mojno? A mojet eto i samiy lyogkiy sposob.

2. ispolzovaniye functii v where classe zamedlyayet zaproz yeli ne polzovatsa FBI. Vopros

chto yesli vmesto

select * from my_table where my_func(my_column) = 1

ispolzovat

select * from (select t.*, my_func(my_column) fu from my_table t) where fu = 1

Yest li raznica?
26 фев 08, 18:58    [5340604]     Ответить | Цитировать Сообщить модератору
 Re: proverka formata dati  [new]
Jannny
Member

Откуда: Спб
Сообщений: 6424
1) А что мешает использовать поле типа "дата", а не типа "строка" и не заморачиваться?

2) естественно не изменит. Если индекса нет или Оракл его взять не может, то сколько не прячьте его - ничего не изменится (в смысле в лучшую сторону :) )
26 фев 08, 19:02    [5340621]     Ответить | Цитировать Сообщить модератору
 Re: proverka formata dati  [new]
faig
Member

Откуда: Chicago ,IL
Сообщений: 146
Jannny

1) А что мешает использовать поле типа "дата", а не типа "строка" и не заморачиваться?


Danniye ne nashi. MI ih importiruyem i proveryayem.

Jannny

2) естественно не изменит. Если индекса нет или Оракл его взять не может, то сколько не прячьте его - ничего не изменится (в смысле в лучшую сторону :) )


ponyatno
26 фев 08, 19:05    [5340633]     Ответить | Цитировать Сообщить модератору
 Re: proverka formata dati  [new]
Elic
Member

Откуда:
Сообщений: 29976
STFF Дата в формате number
26 фев 08, 19:07    [5340645]     Ответить | Цитировать Сообщить модератору
 Re: proverka formata dati  [new]
=Tims=
Member [заблокирован]

Откуда:
Сообщений: 91
я не буду лишний раз говорить о том что, использование функций в запросах - это плохая практика. Но видимо товарищу из Минска виднее :D
26 фев 08, 19:28    [5340701]     Ответить | Цитировать Сообщить модератору
 Re: proverka formata dati  [new]
Elic
Member

Откуда:
Сообщений: 29976
=Tims=
cat "писающий кипятоком" > /dev/null
26 фев 08, 19:50    [5340767]     Ответить | Цитировать Сообщить модератору
 Re: proverka formata dati  [new]
faig
Member

Откуда: Chicago ,IL
Сообщений: 146
=Tims=
я не буду лишний раз говорить о том что, использование функций в запросах - это плохая практика. Но видимо товарищу из Минска виднее :D


kakoye vashe predlojeniye, Ya toje iznachalno ploho otnoshus k functiyam v zaprose tem boleye v where, otsuda i vtoroy vopros. Yest li kakoye-libo predlojeniye po pervomu voprosu



I yesho yest li raznica v performance yesli polzovatsa reg_expom vmesto functiy tipa IS_NUMERIC, IS_ALFA or IS_DATE
26 фев 08, 19:59    [5340782]     Ответить | Цитировать Сообщить модератору
 Re: proverka formata dati  [new]
=Tims=
Member [заблокирован]

Откуда:
Сообщений: 91
faig
=Tims=
я не буду лишний раз говорить о том что, использование функций в запросах - это плохая практика. Но видимо товарищу из Минска виднее :D


kakoye vashe predlojeniye, Ya toje iznachalno ploho otnoshus k functiyam v zaprose tem boleye v where, otsuda i vtoroy vopros. Yest li kakoye-libo predlojeniye po pervomu voprosu


используйте выражения в запросе типа CASE, decode и встроенные sql-функции
26 фев 08, 20:14    [5340806]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить