SQL查询错误,其中不存在

顽固

我的目标

我正在尝试执行以下sql查询:

INSERT INTO api(site,key) VALUES ('example.com','a-random-key') WHERE NOT EXISTS (SELECT * FROM api WHERE site='example.com');

为了在该站点上没有站点时插入一个新行并包含一个对应的密钥(例如,如果没有其他站点,则插入带有相关密钥“ a-random-key”的“ example.com”)使用网站“ example.com”进行记录)。

什么不起作用

我收到以下错误:

#1064-您的SQL语法有误;检查与您的MySQL服务器版本相对应的手册以获取正确的语法,以在第1行的“不存在(SELECT * FROM api WHERE site ='example.com')”附近使用

我尝试过的

我试图分别执行两个查询,并且它们都可以工作。

我的问题

如何使查询工作?

大卫·法伯

我认为您想尝试这样的事情:

INSERT INTO api (site, `key`)
SELECT 'example.com','a-random-key'
  FROM dual
 WHERE NOT EXISTS (SELECT * FROM api WHERE site='example.com');

我认为没有选择就不能WHERE NOT EXISTSINSERT查询中使用在此处查看SQL Fiddle演示另外,SELECT如果您不使用,上述声明将不起作用FROM dual

更新第二个问题是该列key应该被反引号包围...我认为MySQL对此感到窒息,因为它是一个保留字。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

不存在SQL查询

来自分类Dev

SQL不存在查询

来自分类Dev

匹配查询不存在错误

来自分类Dev

不存在时的SQL插入其中数据集来自选择查询

来自分类Dev

不存在时的SQL查询

来自分类Dev

不存在记录的SQL查询

来自分类Dev

SQL查询表不存在

来自分类Dev

SQL错误:表空间不存在

来自分类Dev

使用find_by_sql查询设计模型时,列用户名不存在错误

来自分类Dev

使用find_by_sql查询设计模型时,列用户名不存在错误

来自分类Dev

SQL查询-选择时间跨度之前的最后日期,其中时间跨度中不存在日期

来自分类Dev

不存在的SQL

来自分类Dev

错误:MyUser匹配查询不存在-Django

来自分类Dev

MySQL:查询抛出列不存在错误

来自分类Dev

匹配查询不存在 - Django 搜索错误

来自分类Dev

查询日期或不存在?

来自分类Dev

PostgreSQL SQL 错误 [42703]:错误:“分钟”列不存在

来自分类Dev

具有“不存在”的SQL查询不起作用

来自分类Dev

SQL-查询返回的行可能不存在

来自分类Dev

Microsoft Access SQL查询不存在的属性

来自分类Dev

将不存在的数据添加到SQL查询

来自分类Dev

在SQL中使用不存在和子查询

来自分类Dev

Oracle SQL子查询-不存在的用法

来自分类Dev

SQL日期查询显示不存在的日期

来自分类Dev

今天之前不存在的SQL子查询

来自分类Dev

将不存在的数据添加到SQL查询

来自分类Dev

对象不存在来自SQL查询的备注

来自分类Dev

页面不存在错误

来自分类Dev

错误:不存在模板