Конвертировать SQLITE в MYSQL - PullRequest
0 голосов
/ 31 января 2020

Может кто-нибудь помочь мне преобразовать это в MYSQL, так как IN не поддерживается в MYSQL. Должен ли я использовать INNER JOIN? но как?

DELETE from SSLDOMAINS_logstable where id IN (SELECT id from SSLDOMAINS_logstable order by id asc limit 50)

Ответы [ 2 ]

2 голосов
/ 31 января 2020

Вам нужны только предложение ORDER BY и LIMIT в MySql:

DELETE FROM SSLDOMAINS_logstable 
ORDER BY id
LIMIT 50

Этот запрос удалит первые 50 строк таблицы, упорядоченных по id по возрастанию.

0 голосов
/ 31 января 2020
DELETE t1.*
FROM SSLDOMAINS_logstable t1
JOIN ( SELECT t2.id 
       FROM SSLDOMAINS_logstable t2
       ORDER BY id ASC 
       LIMIT 50 ) t3 ON t1.id = t3.id

Если идентификатор уникален (включая основной), см. Решение forpas . Но если нет ... подзапрос выбирает не менее 50 значений идентификатора, запрос удаляет записи с этими значениями идентификатора - т.е. LIMIT в этом случае работает как «LIMIT WITH TIES»

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