Ett tillvägagångssätt för Oracle:
SELECT val
FROM myTable
UNION ALL
SELECT 'DEFAULT'
FROM dual
WHERE NOT EXISTS (SELECT * FROM myTable)
Eller alternativt i Oracle:
SELECT NVL(MIN(val), 'DEFAULT')
FROM myTable
Eller alternativt i SqlServer:
SELECT ISNULL(MIN(val), 'DEFAULT')
FROM myTable
Dessa använder det faktum att MIN()
returnerar NULL
när det inte finns några rader.