powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Помогите посчитать
6 сообщений из 6, страница 1 из 1
Помогите посчитать
    #39999356
Ziliboba_smoll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем День добрый , помогите посчитать, не могу понят как сделать БД orcle11.

вставлю пока маленький кусочек кода может хватит .

Делаю запрос в бд и считаю необходимые строки , называю их as TJC и as SJC .
И далее хочу использовать их в формуле ., но что то не выходит не понимает он в формуле значения SJC и TJC.
Может кто знает ?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
select round((0.56*sqrt(TJC))+(0.28*sqrt(SJC))+(0.7*ln(SOE)+0.017*VASH),2),

(
SELECT COUNT(*)from D_V_VISIT_FIELDS f
    where f.PID = :VISIT
    and   num_value = 1
   and  f.template_field in ('Z1','Z2','Z3','Z4','Z5','F1','F2','F3','F4','F5',
'PL_LEFT','PL_RIGHT','LO_LEFT','LO_RIGHT','ZP_LEFT','ZP_RIGHT','KO_LEFT','KO_RIGHT') )as TJC,
   
(
SELECT COUNT(*)from D_V_VISIT_FIELDS f
    where f.PID = :VISIT
    and   num_value = 1
   and  f.template_field in ('SZ1','SZ2','SZ3','SZ4','SZ5','SF1','SF2','SF3','SF4','SF5',
   'S_PL_LEFT','S_PL_RIGHT','S_LO_LEFT','S_LO_RIGHT','S_ZP_LEFT','S_ZP_RIGHT','S_KO_LEFT','S_KO_RIGHT') )as SJC
...
Рейтинг: 0 / 0
Помогите посчитать
    #39999362
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверноe как-то так (без тега SRC, что бы болдом выделить добавленное):

select round((0.56*sqrt(TJC))+(0.28*sqrt(SJC))+(0.7*ln(SOE)+0.017*VASH),2)
FROM
(
SELECT

(
SELECT COUNT(*)from D_V_VISIT_FIELDS f
where f.PID = :VISIT
and num_value = 1
and f.template_field in ('Z1','Z2','Z3','Z4','Z5','F1','F2','F3','F4','F5',
'PL_LEFT','PL_RIGHT','LO_LEFT','LO_RIGHT','ZP_LEFT','ZP_RIGHT','KO_LEFT','KO_RIGHT') )as TJC,
(
SELECT COUNT(*)from D_V_VISIT_FIELDS f
where f.PID = :VISIT
and num_value = 1
and f.template_field in ('SZ1','SZ2','SZ3','SZ4','SZ5','SF1','SF2','SF3','SF4','SF5',
'S_PL_LEFT','S_PL_RIGHT','S_LO_LEFT','S_LO_RIGHT','S_ZP_LEFT','S_ZP_RIGHT','S_KO_LEFT','S_KO_RIGHT') )as SJC
FROM dual
)
...
Рейтинг: 0 / 0
Помогите посчитать
    #39999369
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ziliboba_smoll,

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SQL> ed
Wrote file afiedt.buf

  1  select TJC, SJC,sin(TJC+SJC) si from
  2* (select count(*) TJC from emp),(select count(*) SJC from dept)
SQL> /

       TJC        SJC         SI
---------- ---------- ----------
        14          4 -.75098725

SQL>


ps

select round((0.56*sqrt(TJC))+(0.28*sqrt(SJC))
from (
select
count(case when template_field in ('Z1','Z2','Z3','Z4','Z5','F1','F2','F3','F4','F5',
'PL_LEFT','PL_RIGHT','LO_LEFT','LO_RIGHT','ZP_LEFT','ZP_RIGHT','KO_LEFT','KO_RIGHT') then 1 end) tsc
,count(case when template_field in ('SZ1','SZ2','SZ3','SZ4','SZ5','SF1','SF2','SF3','SF4','SF5',
'S_PL_LEFT','S_PL_RIGHT','S_LO_LEFT','S_LO_RIGHT','S_ZP_LEFT','S_ZP_RIGHT','S_KO_LEFT','S_KO_RIGHT') then 1 end) SJC
from
D_V_VISIT_FIELDS f
where f.PID = :VISIT
and num_value = 1

....
stax
...
Рейтинг: 0 / 0
Помогите посчитать
    #39999372
Ziliboba_smoll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Идею понял , только не пойму как сделать полностью, у меня вить там еще один From в котором я присваиваю еще два значения в формуле это SOE и VASH а как это объединить не как не пойму .

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
 select round((0.56*sqrt(TJC))+(0.28*sqrt(SJC))+(0.7*ln(SOE)+0.017*VASH),2),
 
(
SELECT COUNT(*)from D_V_VISIT_FIELDS f
    where f.PID = :VISIT
    and   num_value = 1
   and  f.template_field in ('Z1','Z2','Z3','Z4','Z5','F1','F2','F3','F4','F5',
'PL_LEFT','PL_RIGHT','LO_LEFT','LO_RIGHT','ZP_LEFT','ZP_RIGHT','KO_LEFT','KO_RIGHT') )as TJC,
   
(
SELECT COUNT(*)from D_V_VISIT_FIELDS f
    where f.PID = :VISIT
    and   num_value = 1
   and  f.template_field in ('SZ1','SZ2','SZ3','SZ4','SZ5','SF1','SF2','SF3','SF4','SF5',
   'S_PL_LEFT','S_PL_RIGHT','S_LO_LEFT','S_LO_RIGHT','S_ZP_LEFT','S_ZP_RIGHT','S_KO_LEFT','S_KO_RIGHT') )as SJC
   
  
     

from (
    select 
      max (case when F.TEMPLATE_FIELD ='PL_LEFT' then f.NUM_VALUE else null end)   PL_LEFT ,
      max (case when F.TEMPLATE_FIELD ='PL_RIGHT' then f.NUM_VALUE else null end)  PL_RIGHT,
      max (case when F.TEMPLATE_FIELD ='LO_LEFT' then f.NUM_VALUE else null end)   LO_LEFT,
      max (case when F.TEMPLATE_FIELD ='LO_RIGHT' then f.NUM_VALUE else null end)  LO_RIGHT,
      max (case when F.TEMPLATE_FIELD ='ZP_LEFT' then f.NUM_VALUE else null end)  ZP_LEFT,
      max (case when F.TEMPLATE_FIELD ='ZP_RIGHT' then f.NUM_VALUE else null end)  ZP_RIGHT,
       max (case when F.TEMPLATE_FIELD ='KO_LEFT' then f.NUM_VALUE else null end)  KO_LEFT,
       max (case when F.TEMPLATE_FIELD ='KO_RIGHT' then f.NUM_VALUE else null end)  KO_RIGHT,
        max (case when F.TEMPLATE_FIELD ='Z1' then f.NUM_VALUE else null end)  Z1,
        max (case when F.TEMPLATE_FIELD ='Z2' then f.NUM_VALUE else null end)  Z2,
        max (case when F.TEMPLATE_FIELD ='Z3' then f.NUM_VALUE else null end)  Z3,
        max (case when F.TEMPLATE_FIELD ='Z4' then f.NUM_VALUE else null end)  Z4,
        max (case when F.TEMPLATE_FIELD ='Z5' then f.NUM_VALUE else null end)  Z5,
            
            max (case when F.TEMPLATE_FIELD ='F1' then f.NUM_VALUE else null end)  F1,
            max (case when F.TEMPLATE_FIELD ='F2' then f.NUM_VALUE else null end)  F2,
            max (case when F.TEMPLATE_FIELD ='F3' then f.NUM_VALUE else null end)  F3,
            max (case when F.TEMPLATE_FIELD ='F4' then f.NUM_VALUE else null end)  F4,
            max (case when F.TEMPLATE_FIELD ='F5' then f.NUM_VALUE else null end)  F5,
            
            
      max (case when F.TEMPLATE_FIELD ='S_PL_LEFT' then f.NUM_VALUE else null end)   S_PL_LEFT ,
      max (case when F.TEMPLATE_FIELD ='S_PL_RIGHT' then f.NUM_VALUE else null end)  S_PL_RIGHT,
      max (case when F.TEMPLATE_FIELD ='S_LO_LEFT' then f.NUM_VALUE else null end)   S_LO_LEFT,
      max (case when F.TEMPLATE_FIELD ='S_LO_RIGHT' then f.NUM_VALUE else null end)  S_LO_RIGHT,
      max (case when F.TEMPLATE_FIELD ='S_ZP_LEFT' then f.NUM_VALUE else null end)   S_ZP_LEFT,
      max (case when F.TEMPLATE_FIELD ='S_ZP_RIGHT' then f.NUM_VALUE else null end)  S_ZP_RIGHT,
        max (case when F.TEMPLATE_FIELD ='SZ1' then f.NUM_VALUE else null end)  SZ1,
        max (case when F.TEMPLATE_FIELD ='SZ2' then f.NUM_VALUE else null end)  SZ2,
        max (case when F.TEMPLATE_FIELD ='SZ3' then f.NUM_VALUE else null end)  SZ3,
        max (case when F.TEMPLATE_FIELD ='SZ4' then f.NUM_VALUE else null end)  SZ4,
        max (case when F.TEMPLATE_FIELD ='SZ5' then f.NUM_VALUE else null end)  SZ5,
            
            max (case when F.TEMPLATE_FIELD ='SF1' then f.NUM_VALUE else null end)  SF1,
            max (case when F.TEMPLATE_FIELD ='SF2' then f.NUM_VALUE else null end)  SF2,
            max (case when F.TEMPLATE_FIELD ='SF3' then f.NUM_VALUE else null end)  SF3,
            max (case when F.TEMPLATE_FIELD ='SF4' then f.NUM_VALUE else null end)  SF4,
            max (case when F.TEMPLATE_FIELD ='SF5' then f.NUM_VALUE else null end)  SF5,
                 max (case when F.TEMPLATE_FIELD ='SOE' then f.NUM_VALUE else null end)  SOE,
                 max (case when F.TEMPLATE_FIELD ='VASH' then f.NUM_VALUE else null end)  VASH
                   
                             from D_V_VISIT_FIELDS F
                             where f.PID =:VISIT)
                             
                             



Спасибо.
...
Рейтинг: 0 / 0
Помогите посчитать
    #39999386
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ziliboba_smoll
Идею понял


Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
 select round((0.56*sqrt(TJC))+(0.28*sqrt(SJC))+(0.7*ln(SOE)+0.017*VASH),2)

from (
    select 
      count( case when  num_value = 1 and
     f.template_field in ('Z1','Z2','Z3','Z4','Z5','F1','F2','F3','F4','F5',
     'PL_LEFT','PL_RIGHT','LO_LEFT','LO_RIGHT','ZP_LEFT','ZP_RIGHT','KO_LEFT','KO_RIGHT')
      then 1 end
      ) as TJC,
--
      count( case when  num_value = 1 and
   template_field in ('SZ1','SZ2','SZ3','SZ4','SZ5','SF1','SF2','SF3','SF4','SF5',
   'S_PL_LEFT','S_PL_RIGHT','S_LO_LEFT','S_LO_RIGHT','S_ZP_LEFT','S_ZP_RIGHT','S_KO_LEFT','S_KO_RIGHT') 
     then 1 end
      ) as SJC,
--
      max (case when F.TEMPLATE_FIELD ='PL_LEFT' then f.NUM_VALUE else null end)   PL_LEFT ,
      max (case when F.TEMPLATE_FIELD ='PL_RIGHT' then f.NUM_VALUE else null end)  PL_RIGHT,
      max (case when F.TEMPLATE_FIELD ='LO_LEFT' then f.NUM_VALUE else null end)   LO_LEFT,
      max (case when F.TEMPLATE_FIELD ='LO_RIGHT' then f.NUM_VALUE else null end)  LO_RIGHT,
      max (case when F.TEMPLATE_FIELD ='ZP_LEFT' then f.NUM_VALUE else null end)  ZP_LEFT,
      max (case when F.TEMPLATE_FIELD ='ZP_RIGHT' then f.NUM_VALUE else null end)  ZP_RIGHT,
       max (case when F.TEMPLATE_FIELD ='KO_LEFT' then f.NUM_VALUE else null end)  KO_LEFT,
       max (case when F.TEMPLATE_FIELD ='KO_RIGHT' then f.NUM_VALUE else null end)  KO_RIGHT,
        max (case when F.TEMPLATE_FIELD ='Z1' then f.NUM_VALUE else null end)  Z1,
        max (case when F.TEMPLATE_FIELD ='Z2' then f.NUM_VALUE else null end)  Z2,
        max (case when F.TEMPLATE_FIELD ='Z3' then f.NUM_VALUE else null end)  Z3,
        max (case when F.TEMPLATE_FIELD ='Z4' then f.NUM_VALUE else null end)  Z4,
        max (case when F.TEMPLATE_FIELD ='Z5' then f.NUM_VALUE else null end)  Z5,
            
            max (case when F.TEMPLATE_FIELD ='F1' then f.NUM_VALUE else null end)  F1,
            max (case when F.TEMPLATE_FIELD ='F2' then f.NUM_VALUE else null end)  F2,
            max (case when F.TEMPLATE_FIELD ='F3' then f.NUM_VALUE else null end)  F3,
            max (case when F.TEMPLATE_FIELD ='F4' then f.NUM_VALUE else null end)  F4,
            max (case when F.TEMPLATE_FIELD ='F5' then f.NUM_VALUE else null end)  F5,
            
            
      max (case when F.TEMPLATE_FIELD ='S_PL_LEFT' then f.NUM_VALUE else null end)   S_PL_LEFT ,
      max (case when F.TEMPLATE_FIELD ='S_PL_RIGHT' then f.NUM_VALUE else null end)  S_PL_RIGHT,
      max (case when F.TEMPLATE_FIELD ='S_LO_LEFT' then f.NUM_VALUE else null end)   S_LO_LEFT,
      max (case when F.TEMPLATE_FIELD ='S_LO_RIGHT' then f.NUM_VALUE else null end)  S_LO_RIGHT,
      max (case when F.TEMPLATE_FIELD ='S_ZP_LEFT' then f.NUM_VALUE else null end)   S_ZP_LEFT,
      max (case when F.TEMPLATE_FIELD ='S_ZP_RIGHT' then f.NUM_VALUE else null end)  S_ZP_RIGHT,
        max (case when F.TEMPLATE_FIELD ='SZ1' then f.NUM_VALUE else null end)  SZ1,
        max (case when F.TEMPLATE_FIELD ='SZ2' then f.NUM_VALUE else null end)  SZ2,
        max (case when F.TEMPLATE_FIELD ='SZ3' then f.NUM_VALUE else null end)  SZ3,
        max (case when F.TEMPLATE_FIELD ='SZ4' then f.NUM_VALUE else null end)  SZ4,
        max (case when F.TEMPLATE_FIELD ='SZ5' then f.NUM_VALUE else null end)  SZ5,
            
            max (case when F.TEMPLATE_FIELD ='SF1' then f.NUM_VALUE else null end)  SF1,
            max (case when F.TEMPLATE_FIELD ='SF2' then f.NUM_VALUE else null end)  SF2,
            max (case when F.TEMPLATE_FIELD ='SF3' then f.NUM_VALUE else null end)  SF3,
            max (case when F.TEMPLATE_FIELD ='SF4' then f.NUM_VALUE else null end)  SF4,
            max (case when F.TEMPLATE_FIELD ='SF5' then f.NUM_VALUE else null end)  SF5,
                 max (case when F.TEMPLATE_FIELD ='SOE' then f.NUM_VALUE else null end)  SOE,
                 max (case when F.TEMPLATE_FIELD ='VASH' then f.NUM_VALUE else null end)  VASH
                   
                             from D_V_VISIT_FIELDS F
                             where f.PID =:VISIT)
                             
              
...
Рейтинг: 0 / 0
Помогите посчитать
    #39999450
Ziliboba_smoll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Написал по вашему предыдущему примеру, не сработало, Вы прислали полный код и я увидел что я пропустил "," )
Спасибо большое .
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Помогите посчитать
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]