У меня есть текстовое поле, которое пользователи ставят в год, например, :the_SCHEME_YEAR
. Затем пользователь получает данные за этот год. Однако, когда пользователь оставляет пустое поле текста, я хочу вернуть все годы назад.Возвращайте все данные, когда переменная связывания в WHERE равна NULL
Это код, который я разработал, но не могу получить все годы назад, когда :the_SCHEME_YEAR
, оставлен пустым клиентом.
AND the_year in NVL(:the_SCHEME_YEAR, to_char('2005,'||'2006,'||'2007'))
Любые советы были бы полезны.
SELECT the_year
, ent_type
, SUM (a.no_of_parts) number_ents
, SUM (ent_value * a.no_of_ents) value_ents
FROM TEST_REGISTER A
WHERE the_year > 2004 and the_year <= the_max_year
AND ent_type is not null
AND the_year in NVL(:the_SCHEME_YEAR, to_char('2005,'||'2006,'||'2007'))
GROUP BY the_year, ent_type
ORDER BY 1
Возьмите лук Тони. Я был с радиоприемниками, LOVs и знал, что должен быть какой-то SQL, код которого выполняет эту работу. Большое спасибо. –