Pergunta

Eu importei um monte de postagens para um site do WordPress que tem exatamente a mesma data. Eu gostaria de editar as datas do post para que elas sejam compensadas em um segundo.

Minha preocupação é que possa haver um problema de desempenho quando todas as datas são iguais.

Alguém sabe uma maneira rápida de fazer isso usando o PHPMyadmin para editar o banco de dados MySQL ou algum outro método?

Foi útil?

Solução

Você pode definir todos eles como 'agora' + id.

Pode parecer assim;

 UPDATE  wp_posts
 SET     createdDate = DATE_ADD(now(), INTERVAL wp_posts.wp_id SECOND);

Outras dicas

Antes de mexer com isso, sugiro que você certifique -se de que, de fato, tenha um problema com os tempos simultâneos.

Muitas vezes acho que mexer com dados como esse tem consequências não intencionais. E eu ficaria moderadamente surpreso se o problema for realmente significativo.

Parece -me que estou vendo propostas que definirão todas as linhas para o mesmo valor de deslocamento.

Supondo que você tenha uma chave substituta inteira e as linhas são adjacentes, você pode usar

Tabela de atualização
Definir mydate = date_add (my_date, ID de intervalo - segundo)
Onde id entre e;

UPDATE table SET mydate = DATE_ADD(my_date, INTERVAL 1 SECOND);
SET @r := '2009-04-14';
UPDATE  mytable
SET     mydate = (@r := @r + INTERVAL 1 SECOND);

Ou em uma única consulta, se você não puder manter o estado da sessão:

UPDATE  mytable,
        (
        SELECT  @r := '2009-04-14'
        ) q
SET     mydate  = (@r := @r + INTERVAL 1 SECOND)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top