views:

23

answers:

1

This code worked in Sqlite which i have more experience with. I cant figure out whats wrong here. If it helps SELECT 1 FROM Post WHERE body = 'a'; doesnt give me a syntax error but this does

select 1 WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body = 'a' ) ;

code:

INSERT INTO `Post` (
`name`,
...
`date`) select 
@0,
...
@6 WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body =  @7 ) 

error

near 'WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body =  'text' )' at line 15
+2  A: 

Try using dual as the dummy table in your select (see here).

INSERT INTO `Post` (
`name`,
...
`date`) select 
@0,
...
@6 
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body =  @7 ) 

From the referenced link:

You are allowed to specify DUAL as a dummy table name in situations where no tables are referenced:

mysql> SELECT 1 + 1 FROM DUAL; -> 2

dcp