【问题标题】:How to compare values from two columns of a table in c#如何在c#中比较表中两列的值
【发布时间】:2020-02-01 14:07:59
【问题描述】:

我在(本地数据库 c#)中有一个表,它有两列(name1 和 name2),并且我已经在两列中插入了名称。 现在我需要检查两列中是否存在任何相似的名称。 如果一个名字存在,只显示一个 MessageBox.Show("这个名字存在"); 我怎样才能做到这一点? 谢谢。

【问题讨论】:

  • 你可以这样写 select count(last_name) frm tbl where last_name in (select first_name from tbl) .. 或者你也可以使用两列的交集
  • 不清楚你在问什么。您想比较现有的 name1 和 name2 列,还是有一个新值要与所有值 name1 和 name2 进行比较?你试过什么?
  • 我只需要比较现有的 name1 和 name2 列

标签: c# c#-4.0 compare


【解决方案1】:

仍然不确定您到底想要什么。 此 sql 将列出所有具有相同 name2 的 name1:

SELECT name1 FROM theTable t1
WHERE name1 IN (
  SELECT name2 FROM theTable)
)

当然,您需要将theTable 更改为您的表的真实名称。

如果您想在 C# 中运行 SQL,您可以按照文档进行操作。例如这里:https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/retrieving-data-using-a-datareader

【讨论】:

    【解决方案2】:

    已经有一个主题接近您的问题:

    Sql: How to properly check if a record exists

    而且我确实认为 SQL 计数“如果没有行”返回 0,所以你只需要创建一个简单的条件来显示你的 MessageBox()。

    编辑:如果您想检查相似的名称,请对两列应用相同的验证操作,然后比较两个计数。

    (对不起,我是法语,我的英语是近似的)

    【讨论】:

    • 您发送的链接属于MSql-server。我需要两个比较 C# 中的两列。我不知道该怎么做
    • 你不知道如何在 c# 中发出 sql 请求?如果我是对的,请告诉我你会编辑我的答案。
    • 1) 我在 C# 本地数据库中有一个名为“name1”的列。我已经在其中插入了 10 个名称。 2)我还有一个“textbox2”。当我在此文本框中输入名称时,它将新名称保存在名为“name2”的第二列中 3) 现在我想将“name2”列中的最近值与“name1”列中的所有值进行比较。 4)如果最近的名字,存在于“name1”然后showMessagebox(“exists”)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-10
    • 2016-04-17
    • 1970-01-01
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    • 2016-01-04
    相关资源
    最近更新 更多