【问题标题】:CHECKING if a value exists in a table SQL检查表 SQL 中是否存在值
【发布时间】:2017-04-25 11:57:21
【问题描述】:

我正在制作一个机器人,我需要将commandnamecommandreply 存储在数据库中。我正在使用 mySQL 工作台。

我想检查用户尝试创建的commandname 是否已经在表中,如果是则显示。如果不是,则继续(发出命令)。

connection.query("SELECT commandname FROM commands WHERE EXISTS (commandname = " + args[0] + ")" 

(其中args[0] 是命令名称)。这是我最初的想法,虽然我在 SQL 方面没有太多经验。我不确定如果它存在或不存在会显示什么。

【问题讨论】:

标签: javascript mysql sql node.js


【解决方案1】:
SELECT count(*) FROM commands WHERE commandname = ' + args[0] + '

如果返回 0 则插入 else 更新。

更好的方法是先更新,然后查看更新了多少行(如果为 0,然后插入),在这种情况下,它大部分时间只运行 1 个查询(假设更新比插入更频繁)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-10
    • 2010-10-02
    • 2011-07-21
    • 2010-09-15
    • 2019-11-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多