MS Access SQL, чтобы добавить новый столбец, который является оценка из других столбцов - PullRequest
0 голосов
/ 01 октября 2018

В настоящее время у меня есть таблица MS Access, состоящая из 20 столбцов.Мне нужно добавить новый столбец со счетом 0 - 5, основанный на значениях в других столбцах

NewScore is defaulted to 0
if column1 is between 11 and 20 then NewScore is NewScore + 1
if column2 is between 7 and 10 then NewScore is NewScore + 1
if column3 is between 1 and 5 then NewScore is NewScore + 1
if column4 is between 1 and 20 then NewScore is NewScore + 1
if column5 is between 51 and 80 then NewScore is NewScore + 1

Я выполнил задачу, используя несколько запросов, а затем окончательный запрос, выдавший COUNT, но должен выполнитьбудь чище более эффективным методом.

Спасибо за помощь

1 Ответ

0 голосов
/ 01 октября 2018

Использование switch:

select switch(column1 between 11 and 20, NewScore + 1,
              column2 between 7 and 10, NewScore + 1,
              . . . 
              1=1, NewScore
             ) as NewScore

Мне приходит в голову, что вы могли бы на самом деле захотеть, чтобы эти сложились вместе .Если так:

select (iif(column1 between 11 and 20, 1, 0) +
        iif(column2 between 7 and 10, 1, 0) +
              . . . 
       ) as NewScore
...