![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Computed by
zorik © (2004-10-13 16:18:00)Можно ли создать поле computed by с условием?
sniknik (2004-10-13 20:35:00) [1]про CASE в FB1.5 это я знаю
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1096964604&n=1
вот как сделать подобную конструкцию с помощью UDF...
хотя я кажется понял что ты имееш ввиду, не прямое повторение а просто функцию, на вход эти два параметра а возврашать нужное (case будет внутри функции).
я почемуто думал о повторении.
Vlad (2004-10-13 18:23:00) [2]
> sniknik © (13.10.04 18:15) [8]
> > computed by это из oracle (так ? есть там такое, может
> еще где)
почему только из Оракла, в IB тоже cоmputed by есть (в IB6 и Yaffil уж точно, в более ранних версиях не уверен)
Johnmen (2004-10-13 18:23:00) [3]>sniknik © (13.10.04 18:15) [8]
И то и другое.
В FB1.0 нет CASE => UDF. В FB1.5 CASE - конструкция языка. Вполне применима в выч.полях.
sniknik (2004-10-13 18:15:00) [4]догадки по коду это одно, уверенность другое.
> double precision это из ib и клонов ... наверное еще где встречается
> computed by это из oracle (так ? есть там такое, может еще где)
вот и догадайся тут, когда реальное с желаемым мешают.
> В FB1.0 разве что с пом. UDF
именно вычисляемое поле или конструкцию с выбором в запросе навроде как 1.5 есть?
если именно вычисляемое, тоже хотел бы узнать как.
Anatoly Podgoretsky (2004-10-13 17:38:00) [5]sniknik © (13.10.04 17:21) [5]
Johnmen он умный
Johnmen (2004-10-13 17:32:00) [6]:)
В FB1.0 разве что с пом. UDF
sniknik (2004-10-13 17:21:00) [7]а вот догадайся, ты же Johnmen-у не сказал, предпочел глупо ухмыльнутся, а мне грустно от этого. ;о(((
zorik (2004-10-13 16:48:00) [8]2 sniknik> какая СУБД?
у меня Firebird 1.0
sniknik (2004-10-13 16:45:00) [9]
CREATE TABLE t1 (t int, q float,
q_s AS CASE t
WHEN 0 THEN 0
ELSE q/t
END)
;(
zorik (2004-10-13 16:35:00) [10]create table t1
(t integer,
q double precision,
q_s computed by (q/t))
и сдесь проверить если t=0 то q_s=0 иначе q_s=q/t
:)
Johnmen (2004-10-13 16:25:00) [11]Сервер ?