Size: a a a

2021 June 28

VK

Vladimir Karamazov in dbGeeks
Можно чанками обновлять (limit/offset)
источник

EK

Evgeniy Kuvshinov in dbGeeks
чанками идея правильная
а вот offset не советовал бы юзать
источник

VK

Vladimir Karamazov in dbGeeks
Можно по суррогатному ключу, пример https://www.db-fiddle.com/f/3b9ikSV9eoRT33suAMx7Fd/1
mod(person_id,10) - суррогатный ключ
источник

EK

Evgeniy Kuvshinov in dbGeeks
в его случае хватит лимита
источник

EK

Evgeniy Kuvshinov in dbGeeks
ему надо проставлять колонку обработанным записям
источник

EK

Evgeniy Kuvshinov in dbGeeks
и тогда хватит только limit
источник

VK

Vladimir Karamazov in dbGeeks
Аа... Тогда просто в where добавить AND dc.name <> sc.name и лимита хватит
источник

EK

Evgeniy Kuvshinov in dbGeeks
еще вариант что вариаций там не так много
источник

EK

Evgeniy Kuvshinov in dbGeeks
можно просто получить все уникальные названия городов (удалив из них спецсимволы и тд) что есть в бд
там будет штук 100 записей
и сделать таблицу соответствия ручками какая строка к какому городу относится по иду
и просто сопостовлять
источник
2021 July 12

e

eugene_steps in dbGeeks
SQLite
в таблицу набилось 5 млн записей и  SELECT с несколькими условиями почти секунду занимает. Можно ли сильно ускорить?
На самом деле работа идет с последними несколькими тысячами записей, могу ли я, например, удалять и перемещать ненужные в какую-то архивную таблицу, или это еще медленнее в сумме будет?
источник

EK

Evgeniy Kuvshinov in dbGeeks
а индекс есть по дате ?
источник

EK

Evgeniy Kuvshinov in dbGeeks
как ты определяешь последние несколько тысяч ?
есть ли explain этого запроса
источник

EK

Evgeniy Kuvshinov in dbGeeks
разносить на разные таблицы смысла не вижу, проще сделать индекс по дате создания например и фильтровать выборку по этому индексу чтобы не по всем 5 млн записям лазить, а скажем created_at > ....
источник

e

eugene_steps in dbGeeks
по дате нет, пробовал толькл индекс на пару разных полей, но почти не ускорилось
источник

e

eugene_steps in dbGeeks
проверяю логически, сделал SELECT, у себя в софте что-то проверил, и все, часть записей в этой таблице больше не нужна никогда
источник

e

eugene_steps in dbGeeks
я вот и задумался, нафига мне все эти миллионы, но не знаю насколько быстро будет удаление старых и что там будет с вакуумом
источник

EK

Evgeniy Kuvshinov in dbGeeks
не надо ничего удалять
источник

EK

Evgeniy Kuvshinov in dbGeeks
зачем мучить диск
источник

EK

Evgeniy Kuvshinov in dbGeeks
просто сделай удобный индекс по дате создания или еще чем то и выберай корректно
источник

EK

Evgeniy Kuvshinov in dbGeeks
смотри explain запроса
источник