Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да задам ред по подразбиране за заявка, която не връща редове?

Един подход за Oracle:

SELECT val
FROM myTable
UNION ALL
SELECT 'DEFAULT'
FROM dual
WHERE NOT EXISTS (SELECT * FROM myTable)

Или алтернативно в Oracle:

SELECT NVL(MIN(val), 'DEFAULT')
FROM myTable

Или алтернативно в SqlServer:

SELECT ISNULL(MIN(val), 'DEFAULT')
FROM myTable

Те използват факта, че MIN() връща NULL когато няма редове.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да получа списък с имена на елементи от XML стойност в SQL Server

  2. Какво е STATISTICS XML в SQL Server?

  3. SQL Server:Заменете невалидни XML знаци от поле VARCHAR(MAX).

  4. Как да възстановите база данни от C#

  5. Разлика в обработката на интервалите между Oracle и SQL Server