2

このコードは、私が経験豊富な Sqlite で機能しました。ここで何が悪いのかわかりません。それが役立つ場合SELECT 1 FROM Post WHERE body = 'a';、構文エラーは発生しませんが、これは発生します

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

コード:

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

エラー

near 'WHERE NOT EXISTS (SELECT 1 FROM Post WHERE body =  'text' )' at line 15
4

1 に答える 1

2

選択のダミー テーブルとしてデュアルを使用してみてください (こちらを参照)。

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

参照リンクから:

テーブルが参照されていない状況では、ダミーのテーブル名として DUAL を指定できます。

mysql> デュアルから 1 + 1 を選択します。-> 2

于 2010-06-19T13:26:14.653 に答える