如何 select 一个带有变量名的数据库?
How to select a database with variable name?
我们有像
这样的数据库
S01_2017925
S01_2017926
S01_20170926_105439
S01_20170926_122707
其中 S01
是数据库的名称,20170925
是创建日期,122707
是每天一次的时间。
我想做的是 select 最后一个(当前)数据库的名称。
我试过:
select MAX(db_name())
from sys.databases
where db_name() like 'S01_%'
如有任何帮助,我们将不胜感激。
你可以像这样获得最后一个 created/restored 数据库
select top 1 name
from sys.databases
where name like 'S01_%'
order by create_date desc
但我不确定这是否会为您提供当前的数据库。
为此,您当前的数据库必须是最后创建(或恢复)的数据库
您应该使用 name
列进行筛选,而不是 db_name()
select MAX(name)
from sys.databases
where name like 'S01_%'
我们有像
这样的数据库S01_2017925
S01_2017926
S01_20170926_105439
S01_20170926_122707
其中 S01
是数据库的名称,20170925
是创建日期,122707
是每天一次的时间。
我想做的是 select 最后一个(当前)数据库的名称。
我试过:
select MAX(db_name())
from sys.databases
where db_name() like 'S01_%'
如有任何帮助,我们将不胜感激。
你可以像这样获得最后一个 created/restored 数据库
select top 1 name
from sys.databases
where name like 'S01_%'
order by create_date desc
但我不确定这是否会为您提供当前的数据库。
为此,您当前的数据库必须是最后创建(或恢复)的数据库
您应该使用 name
列进行筛选,而不是 db_name()
select MAX(name)
from sys.databases
where name like 'S01_%'