2017-11-20 8 views
0

のJOIN:SQL構文エラーINNERは、私は、このSQLクエリを実行しようとすると、このエラーを取得して保持してい

UPDATE wp_postmeta 
SET meta_value = "1316" 
INNER JOIN wp_posts ON wp_postmeta.post_id = wp_posts.ID 
WHERE wp_posts.post_type="imagen_dia" AND wp_postmeta.meta_key="ae_post_template" 

すべてのヘルプしてください:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INNER JOIN wp_posts ON wp_postmeta.post_id = wp_posts.ID WHERE wp_posts.post_typ' at line 3 (Line 4)

私のSQLクエリはこれですか?

+1

FROM ... – jarlh

+0

どのDBMSですか?オラクル? MySQL? SQLサーバー? ...結合された更新の構文は、さまざまなDBMSで大きく異なります。二重引用符は途中で名前のためのものです。文字列には一重引用符を使用します。 –

+1

[MYSQLの更新ステートメントの内部結合テーブル](https://stackoverflow.com/questions/8057565/mysql-update-statement-inner-join-tables)の可能な複製 – jmoerdyk

答えて

2

参加しました更新用のセット

UPDATE wp_postmeta 
INNER JOIN wp_posts ON wp_postmeta.post_id = wp_posts.ID 
SET meta_value = "1316" 
WHERE wp_posts.post_type="imagen_dia" AND wp_postmeta.meta_key="ae_post_template" 
+1

ありがとうございます!今それは完璧に動作します!私はmysqlを使用する必要があることを知らないsqlを使用していました。あなたは私の一日を救った。もう一度お友達に感謝します! :) – Bob

0

あなたはFROM言葉が欠落している:MySQLで

UPDATE wp_postmeta 
SET meta_value = "1316" 
FROM wp_postmeta 
INNER JOIN wp_posts ON wp_postmeta.post_id = wp_posts.ID 
WHERE wp_posts.post_type="imagen_dia" AND wp_postmeta.meta_key="ae_post_template" 
1

構文の前にする必要がありますJOINのベンダー固有です。だから、この文は標準SQLで、ほぼすべてのRDBMSで動作するはず

UPDATE wp_postmeta 
SET meta_value = '1316' 
WHERE meta_key = 'ae_post_template' 
AND post_id IN (SELECT id FROM wp_posts WHERE post_type = 'imagen_dia'); 

:-)、シンプル読みやすく安全な更新ステートメントを持つように参加せずにこれを行います。

関連する問題