数据库问题

sqlServer数据库,在同一服务器不同数据库下,数据库A要查询其它数据库里面的数据,问题出在其它数据库的名称是按照日期进行命名的,我要使用的是最新的数据库的数据,有没有办法能解决这个问题

SQL 帆软用户p9k8MX4NIW 发布于 2023-9-19 16:37
1min目标场景问卷 立即参与
回答问题
悬赏:0 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-9-19 16:40(编辑于 2023-9-19 16:53)

最新就是当天的呗,假设数据库名称是yyyyMMdd的格式

SELECT * FROM ${FORMAT(TODAY(),"yyyyMMdd")}.TABLENAME

image.png

-----------

把下面的print(@sql_) 改成exec(@sql_)

image.png

  • 帆软用户p9k8MX4NIW 帆软用户p9k8MX4NIW(提问者) 不用帆软,单独sqlserver有办法实现吗?
    2023-09-19 16:41 
  • Z4u3z1 Z4u3z1 回复 帆软用户p9k8MX4NIW(提问者) 能.比较麻烦
    2023-09-19 16:46 
  • Z4u3z1 Z4u3z1 回复 帆软用户p9k8MX4NIW(提问者) 补充在上面了
    2023-09-19 16:54 
最佳回答
0
用户k6280494Lv6资深互助
发布于2023-9-19 16:40(编辑于 2023-9-19 16:47)

select * from ${today}

select * from CONVERT(varchar(10), GETDATE(), 120)

  • 帆软用户p9k8MX4NIW 帆软用户p9k8MX4NIW(提问者) 不用帆软,单独sqlserver有办法实现吗?
    2023-09-19 16:41 
  • 用户k6280494 用户k6280494 回复 帆软用户p9k8MX4NIW(提问者) select * from CONVERT(varchar(10), GETDATE(), 120) 这样子试一下
    2023-09-19 16:47 
最佳回答
0
快乐星光Lv5中级互助
发布于2023-9-19 16:52(编辑于 2023-9-19 16:53)

这种一般用存储实现,类似这样的image.png

最佳回答
0
3333xzxLv4初级互助
发布于2023-9-20 11:17

SELECT name

FROM sys.databases

WHERE name LIKE 'DatabasePrefix%' -- 使用数据库名称的前缀

ORDER BY name DESC

OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY;

  • 4关注人数
  • 235浏览人数
  • 最后回答于:2023-9-20 11:17
    请选择关闭问题的原因
    确定 取消
    返回顶部