如何确定表中是否包含 SQL 中的值?

Tac*_*tan 3 java sql ms-access jdbc ms-access-2013

我觉得我在这里遗漏了一些非常明显的东西,但似乎唯一的方法是获取值,然后查看它是否返回 null(空)值,我宁愿不这样做。

SQL 中是否有等效于 List.contains(Object o) 的内容?或者也许 JDBC 具有这种性质?如果是,那是什么?谢谢你。

编辑:我使用的是 Microsoft Access 2013。

编辑 2:不幸的是,我没有任何有用的代码可以显示,但这是我想要做的事情的要点。它根本不是什么独特的东西。我想要一个方法(Java)来返回存储在数据库中的用户的值。如果之前没有将用户添加到数据库中,则应添加该用户,并设置该用户的默认值。然后将返回那些新创建的值。如果一个玩家已经被添加到数据库中(以用户名作为主键),我不想覆盖已经存在的数据。

编辑3:我已经解决了这个问题!参考我下面的回答。

Dar*_*rov 5

查看 SQL 表是否包含在列上具有某些条件的行的唯一方法是实际进行 SQL 查询。我不明白你为什么不这样做。只需确保您将限制结果的列上有一个索引。也为了更好的速度使用,count以防止从行中检索所有数据。

SELECT count(*) FROM foos WHERE bar = 'baz'
Run Code Online (Sandbox Code Playgroud)

假设您在该bar列上有一个索引,这个查询应该非常快,您所要做的就是检查它是否返回 > 0。如果是,那么您有与您的条件匹配的行。