在 T-SQL 中,表中的数字是否可以具有不同的显示名称?

ask*_*hir 1 sql t-sql sql-server select

我想知道是否可以在 T-SQL 中出于报告原因为数字提供“显示”名称或其他名称。例如,我有一个这样的表:

SELECT  [IDNumber]
      ,[Name]
      ,[Status]
      ,[CurrentStep]
      ,[Exceptions]
      ,[ItemCount]
  FROM [Batch].[dbo].[BatchNa]
Run Code Online (Sandbox Code Playgroud)

我当前的步骤有多个数字:

  • -1 = 完成
  • 1 = 开始
  • 2 = 创建
  • 3 = 检查
  • 4 = 验证
  • 5 = 双盲
  • 6 = 等

等等。

当我吐出表格报告时,我得到了这个吐出:

123 | Test | In Progress | 3 | No | 512
Run Code Online (Sandbox Code Playgroud)

对此有何建议?

Mur*_*nik 5

您可以创建一个在数字步骤和显示名称之间映射的表并在其上加入:

SELECT  [IDNumber]
      ,[Name]
      ,[Status]
      ,[DisplayName]
      ,[Exceptions]
      ,[ItemCount]
  FROM [Batch].[dbo].[BatchNa] b
  JOIN [Batch].[dbo].[Steps] s ON b.[CurerntStep] = s.[Step]
Run Code Online (Sandbox Code Playgroud)

  • 添加“BatchNa”应该具有“Steps”表的外键。这将确保只能插入有效的“CurrentStep”值以及正确的查询结果。 (2认同)