获得用户友好的MSSQL服务器的产品名称

Vla*_*adL 2 sql sql-server

我正在寻找一种方法来获得用户友好的MSSQL产品名称.

我试过了:

select @@version
Run Code Online (Sandbox Code Playgroud)

但它返回了很多信息(我现在不想解析它)

Microsoft SQL Server 2008 R2 (RTM) - 10.50.1617.0 (X64) Apr 22 2011 19:23:43 Copyright (c) Microsoft Corporation Developer Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: )

另一个尝试是

SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')
Run Code Online (Sandbox Code Playgroud)

返回 10.50.1617.0 RTM Developer Edition (64-bit)

我试图SERVERPROPERTY从这个列表中获取每个属性,但找不到所需的属性.

有没有办法只获得字符串Microsoft SQL Server 2008 R2

谢谢

pet*_*erm 5

怎么样

SELECT LEFT(@@version, CHARINDEX(' - ', @@version)) ProductName;
Run Code Online (Sandbox Code Playgroud)

注意:您可以根据需要进行调整(例如,如果必须,请修剪RTM等)

示例输出SQL Server 2008:

|                         PRODUCTNAME |
|-------------------------------------|
| Microsoft SQL Server 2008 R2 (RTM)  |

这是SQLFiddle演示

示例输出SQL Server 2012:

|                PRODUCTNAME |
|----------------------------|
| Microsoft SQL Server 2012  |

这是SQLFiddle演示