Вот мои запросы, они не работают, но я хочу сделать что-то вроде этого:
SELECT a_field FROM a_table
WHERE
...
AND
CASE
WHEN a_value_from_another_query IS NULL THEN a_second_field IS NULL
ELSE a_second_field = a_value_from_another_query
END
Или
SELECT a_field FROM a_table
WHERE
...
AND
CASE a_value_from_another_query
WHEN NULL THEN a_second_field IS NULL
ELSE a_second_field = a_value_from_another_query
END
Или
SELECT a_field FROM a_table
WHERE
...
AND
CASE NVL(a_value_from_another_query, 'x')
WHEN 'x' THEN a_second_field IS NULL
ELSE a_second_field = a_value_from_another_query
END
Когда a_value_from_another_query IS NULL
, я хочу добавить a_second_field IS NULL
к моему предложению WHERE, когда a_value_from_another_query IS NOT NULL
, я хочу добавить a_second_field = a_value_from_another_query
к моему предложению WHERE.Как мне этого добиться?