Заявление по делу Незаконное выражение SQL

0

Вопрос

Я не понимаю, откуда взялась ошибка msg "Незаконное выражение в предложении WHEN выражения CASE", запустив этот фрагмент кода в Teradata SQL

CASE 
  WHEN f_ev1.PROCESS_NO IN 
    (
      SELECT
        numbers.PROCESS_NO
      FROM numbers
      WHERE 
        numbers.FLAG = 1
      GROUP BY 1 --no duplicates
    ) THEN 2
END AS Status,

Если я напишу (некоторые цифры), это работает просто отлично. Но это список, состоящий из 50 уникальных значений, которые могут изменяться с течением времени.

case sql teradata
2021-11-16 11:32:54
1

Лучший ответ

0

Я предлагаю вам загрузить пятьдесят значений в другую таблицу и объединить эту таблицу с основной таблицей

table_50 - Таблица с 50 уникальными значениями main_tbl - Основная таблица

insert into table_50 ( process_no ) SELECT numbers.PROCESS_NO FROM numbers WHERE numbers.FLAG = 1 GROUP BY 1 ;

Select case when b.process_no is null then 2  end as status from main_table a
left join table_50 b
on a.process_no= b.process_no

С точки зрения производительности это более эффективно, и вы также можете обновить значения в таблице 50 в соответствии с вашими требованиями

2021-11-23 13:08:01

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

Популярное в этой категории

Популярные вопросы в этой категории