Как получить имя базы данных на сервере?

У меня есть базы данных на сервере, как показано ниже, и я хочу получить имя базы данных S01_%, где % самая поздняя дата (последняя часть - время).

bd_names () возвращает имя текущей базы данных...

2 ответа

Использование sys.databases перечислить все базы данных:

SELECT TOP 1 *, REPLACE(name, 'S01_', '') AS d
FROM sys.databases
WHERE name LIKE 'S01_%'
ORDER BY d DESC;

Для получения части даты вам придется проанализировать имя базы данных.

Вы можете запросить sys.databases с order by name desc и используя top 1 caluse.

SELECT top 1 name
FROM sys.databases
WHERE name LIKE 'S01_%' 
order by name desc
;
Другие вопросы по тегам