Jeśli to napiszesz:
SELECT
COALESCE(OVER_BID_PRICE, -1)
FROM
AUCTION_CAR_BID
WHERE
BID_SEQ = 2354435345;
Wyniki mogą być dwojakiego rodzaju.
Pierwszy wynik:Twoje zapytanie nie zwraca wierszy! Twój warunek WHERE jest niezadowalający, więc przeczytasz NULL
Drugi wynik:Twoje zapytanie zwraca wiersze, ale wartość Twojego pola to NULL, w tym przypadku Twoje COALESCE działa dobrze
Aby rozwiązać ten problem, możesz spróbować tego:
SELECT COALESCE(
(SELECT
COALESCE(OVER_BID_PRICE, -1)
FROM AUCTION_CAR_BID
WHERE BID_SEQ = 2354435345)
,-1);
Powiedz mi, czy wszystko w porządku