2017-08-15 6 views
-1

私は以下のようにサーバー内にデータベースを持っています。S01_%の名前を取得したいと考えています。%は最新の日付です(最後の部分は時間です)。サーバー内のデータベースの名前を取得するにはどうすればよいですか?

enter image description here

bd_names()現在のデータベースの名前を返します...

+0

([すべての現在のデータベースの名前を見つけるために、SQL Serverのクエリ]の可能性のある重複https://stackoverflow.com/questions/873393/sql-server-query-to-find-all-current-database-names ) –

答えて

1

使用sys.databasesは、すべてのデータベースを一覧表示するには:

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

日付部分を取得するには、データベース名を解析する必要があります。

1

sys.databasesorder by name descと照会し、top 1 caluseを使用して照会することができます。

SELECT top 1 name 
FROM sys.databases 
WHERE name LIKE 'S01_%' 
order by name desc 
; 
関連する問題