【问题标题】:Remove Enums from list if they already exists in database如果 Enums 已存在于数据库中,则从列表中删除它们
【发布时间】:2013-12-03 15:23:04
【问题描述】:

我有一个名为DynamicText 的数据库表,其中包含IDContentTypeEnum 的字段。

我有一个名为DynamicTextEnums 的枚举列表,我想确保数据库中每个枚举只有一条记录。

示例:我有 3 个枚举,分别称为 RedWhiteBlue。创建新记录时,我想查询数据库以查看枚举是否已存在记录。当我这样做时,我发现RedBlue 的记录已经存在。然后我只希望White 出现在下拉列表中。

我正在尝试创建查询数据库并仅返回数据库中的枚举值的 SQL 脚本。因此,如果Red 有 7 个条目,Blue 有 5 个条目,它将返回 1 Red 和 1 Blue

有什么想法吗?

【问题讨论】:

  • 那么您在寻找什么?一个 SQL 查询做什么?
  • 对不起,应该更具描述性。我正在寻找 SQL 查询。
  • 我用我正在寻找的内容更新了我的帖子。

标签: sql-server asp.net-mvc enums


【解决方案1】:

您可以使用 distinct 来获取 TypeEnum 的唯一值。

SELECT distinct [TypeEnum]
FROM [app].[DynamicText]

【讨论】:

  • 是的,这也有效。使用它可能比简单地选择所有并按[TypeEnum]分组更好
【解决方案2】:

想通了。我简单地在数据库中查询了TypeEnum 字段,然后按该列对其进行分组。这样我每个枚举只有一个结果。

SELECT [TypeEnum]
FROM [app].[DynamicText]
GROUP BY [TypeEnum]

【讨论】:

    猜你喜欢
    • 2021-12-02
    • 2011-05-19
    • 1970-01-01
    • 1970-01-01
    • 2012-03-07
    • 2021-07-24
    • 2020-10-13
    • 1970-01-01
    • 2021-08-15
    相关资源
    最近更新 更多