如何在SQL Server的SELECT语句中去除数据库名称中的空格?
解决SQL Server中移除数据库名称空格的问题
要移除数据库名称中的所有空格,只需在SELECT语句中对DB_NAME()的结果使用REPLACE函数替换所有空格字符即可。以下是修改后的完整代码:
BEGIN PRINT 'Code;Name;Ledgers' DECLARE @command VARCHAR(MAX) SET @command = 'IF ''?'' NOT IN (''master'',''model'',''msdb'',''tempdb'') USE [?] SELECT CG_Num ,CG_Intitule ,REPLACE(DB_NAME(), '' '', '''') AS [Ledgers] FROM [dbo].[F_COMPTEG]' EXEC SP_msforeachdb @command END
关键修改说明:
- 将原语句中的
DB_NAME() AS [Current Database]替换为REPLACE(DB_NAME(), '' '', '''') AS [Ledgers] REPLACE(DB_NAME(), ' ', '')会把数据库名称里的所有空格字符(' ')替换为空字符串(''),直接得到无空格的名称- 别名改为
[Ledgers]以匹配你期望的输出列名(若无需修改别名,也可保留[Current Database])
执行修改后的代码后,输出结果会自动移除数据库名称中的所有空格,完全符合你给出的期望格式。
内容的提问来源于stack exchange,提问作者YannR
相关产品推荐
相关产品推荐

