Нужна помощь в определении синтаксической ошибки в строке 20 - PullRequest
0 голосов
/ 04 февраля 2019

db Fiddle

У вас есть ошибка в синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса для использования рядом с «УДАЛИТЬ ИЗ wp_postmeta ГДЕ post_id IN» (выберите post_id из («SELECT pm.post») в строке 20

-- Deleting all duplicate products in wp_posts table

DELETE FROM
wp_posts WHERE ID IN ( SELECT ID FROM
(
select ID,post_title,post_type,meta_value from 
(SELECT wp_postmeta.ID,post_title,post_type ,meta_value,
row_number()over(partition by post_title order by wp_postmeta.meta_value) rn                           
FROM   wp_postmeta 
JOIN wp_posts ON wp_postmeta.post_id = wp_posts.id 
WHERE  wp_posts.post_type = 'Product' 
  AND wp_postmeta.meta_key = '_regular_price' 

) t where t.rn <> 1
) AS aliasx
)

-- Deleting all corresponding wp_postmeta.post_ids that don't have a match in wp_posts.id after the duplicate deletion above

DELETE FROM wp_postmeta WHERE post_id IN (select post_id from (
  SELECT pm.post_id 
  FROM
    wp_postmeta pm
    LEFT JOIN 
    wp_posts p
    ON p.id = pm.post_id
  WHERE
    p.id IS NULL

) AS aliasy )

InMYPHPAdmin Я получаю это:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '(partition by post_title order by wp_postmeta.meta_value) rn ' at line 5

В онлайн-валидаторе https://www.eversql.com/sql-syntax-check-validator/ Я получаю это:

У вас естьошибка в вашем синтаксисе SQL; кажется, что ошибка примерно такова: '(разделение по порядку post_title по' в строке 21

Кажется, что это целая куча разных ошибок в зависимости от того, где я выполняю запрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...