首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySql Where-子查询语法错误

问MySql Where-子查询语法错误
EN

Stack Overflow用户
提问于 2010-06-19 21:22:52
回答 1查看 137关注 0票数 2

这段代码在Sqlite中工作,我对它有更多的经验。我不知道这里出了什么问题。如果有用的话,SELECT 1 FROM Post WHERE body = 'a';不会给我语法错误,但是下面的代码会

代码语言:javascript
复制
select 1 WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body = 'a' ) ;

代码:

代码语言:javascript
复制
INSERT INTO `Post` (
`name`,
...
`date`) select 
@0,
...
@6 WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body =  @7 ) 

错误

代码语言:javascript
复制
near 'WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body =  'text' )' at line 15
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-06-19 21:26:15

尝试在select中使用dual作为虚拟表(请参阅here)。

代码语言:javascript
复制
INSERT INTO `Post` (
`name`,
...
`date`) select 
@0,
...
@6 
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body =  @7 ) 

从引用的链接:

在没有引用任何表的情况下,您可以将DUAL指定为虚拟表名:

mysql>从DUAL中选择1+1;-> 2

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3075627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档