I’m trying to get the SQL version such as SQL Server 2014, 2016, 2017, etc by querying the currentversion in the registry. I’m having trouble getting it to work as it seems to keep returning . Can anyone help me fix it. I’m sure it can be written more efficiently too so if you can see a better way please let me know. I’m very novice with relevance queries. Here’s what I have so far that isn’t working. Thanks
if(exists value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then (
if((it starts with "14.") of value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then "SQL Server 2017"
else if((it starts with "13.") of value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then "SQL Server 2016"
else if((it starts with "12.") of value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then "SQL Server 2014"
else if((it starts with "11.") of value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then "SQL Server 2012"
else if((it starts with "10.50.") of value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then "SQL Server 2008 R2"
else if ((it starts with "10.0.") of value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then "SQL Server 2008"
else if((it starts with "9.") of value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then "SQL Server 2005"
else if((it starts with "8.") of value "CurrentVersion" of key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" of native registry)
then "SQL Server 2000"
else "UNKNOWN"
)
else ""