Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.26;
Скачать: CL | DM;

Вниз

Условная сборка таблиц   Найти похожие ветки 

 
Endi ©   (2003-05-29 20:58) [0]

Всем здрасте.
Такой вопрос к Вам у меня.
Есть две таблицы, примерно таких:
1. F1 F2 F3 2. F1 F2
A 0.3 ШТ A 5
B 0.2 ШТ B 4
C 0.0 КГ C 3
D 0.1 ШТ D 4
Нужно получить, примерно такую:
F1 F2 F3 F4
A 0.3 КГ 1.5
B 0.2 КГ 0.8
C 1.0 КГ 3.0
D 0.1 КГ 0.4
т.е., все ШТ заменяются на КГ, если 1.F2=0, то заменяется на 1, далее происходит перемножение 1.F2 на 2.F2, из произведения коих получается F4.
Так вот, вопрос:
у меня лично уже мозги плавятся, но никак не догоняю - как получить конечную таблицу с помощью SQL.


 
Zz_   (2003-05-29 21:04) [1]

1. case
2. union с where


 
ЮЮ ©   (2003-05-30 07:20) [2]

если 1.F2=0, то заменяется на 1
Логичнее вместо 0 иметь 1 (т.к. 1 кг весит 1 кг, а не 0), тогда можно просто умножать 1.F2 на 2.F2


 
Sandman25 ©   (2003-05-30 10:47) [3]


select t1.f1,
case
when t1.f2 = 0 then 1
else t1.f2
end f2,
case
when t1.f3 = "ШТ" then "КГ"
else t1.f3
end f3,
case
when t1.f2 = 0 then t2.f2
else t1.f2 * t2.f2
end f4
from t1,
t2
where t1.f1 = t2.f1


 
Соловьев ©   (2003-05-30 10:49) [4]

СУБД?


 
Sandman25 ©   (2003-05-30 11:00) [5]

2 Соловьев
Если вопрос был ко мне, то это Informix. На IB должно быть аналогично.


 
Соловьев ©   (2003-05-30 11:05) [6]


> Sandman25 © (30.05.03 11:00)

к автору поста


 
Zacho ©   (2003-05-30 11:08) [7]


> Sandman25 © (30.05.03 11:00)

Только не на IB, а на FB 1.5 :)


 
Sandman25 ©   (2003-05-30 11:57) [8]

Zacho © (30.05.03 11:08)

Я последний раз на IB работал года 3 назад, так что FB даже не видел никогда :) Тем более FB 1.5 :)


 
Zacho ©   (2003-05-30 12:15) [9]


> Sandman25 © (30.05.03 11:57)

А в IB никогда не было CASE . CASE появился совсем недавно, в FB 1.5 А в IB такое можно сделать хранимой процедурой.
Впрочем, понятно, что за 3 года можно и позабыть что есть в IB, а чего нет :)
Но один черт, пока не узнаем, какая СУБД у автора ветки, правильный ответ дать не сможем :-)



Страницы: 1 вся ветка

Текущий архив: 2003.06.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
14-84731
Juster~
2003-05-31 22:18
2003.06.26
Ээээээ...


3-83903
RazorbladE
2003-06-03 11:52
2003.06.26
Отображение данных из SQL запроса dbExpress MySQL.


1-84103
NaZGHUL
2003-06-10 11:43
2003.06.26
Почему срабатывает условие


6-84473
LOM
2003-04-10 14:59
2003.06.26
Вопрос по TTcpServer


14-84671
Merfi
2003-06-08 15:11
2003.06.26
Глюк WinXp