SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 02.09.2011 20:22:32

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Замена старых записей не увеличивая количество записей

Здравствуйте. Есть таблица её максимальный размер может быть 10 строк, далее мне необходимо добавлять в неё новые записи при этом не увеличивая размера в 10 строк, т.е надо удалять записи с наименьшим индексом каждый раз когда количество строк в таблице >= 10

пример надо вставить 11,12,13,14,15 в уже заполненную таблицу
tb
------
id
1
2
3
4
5
6
7
8
9
10

и получить следующий результат
tb
-----
id
6
7
8
9
10
11
12
13
14
15

Неактивен

 

#2 03.09.2011 00:48:28

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Замена старых записей не увеличивая количество записей

А зачем Вам такая таблица? Храните одно число (и считайте, что у Вас есть
виртуальная таблица с числами от N до N + 10)? smile

Ну или напишите триггер, который будет удалять строки с меньшим индексом
при вставке. Хотя, это решение мне нравится меньше, чем первое.

Неактивен

 

#3 03.09.2011 01:04:50

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Re: Замена старых записей не увеличивая количество записей

))) не +10 нельзя на самом деле числа могут идти не чётко по возрастанию 6,8,9,11 и т.д

А нужно это всё для вывода новых записей на главной странице сайта, весь контент парсится из xml, всего обрабатывается пара миллионов строк, что уже есть в таблице обновляется а чего ещё нет то вставляется и то чего ещё нет и считается новой записью, поэтому решил для скорости запроса и вообще скидывать id новых записей в отдельную таблицу (tb), обычно новых записей до 1 тыс. добавляется, а мне на самом деле достаточно и 100(только необходимо чтоб они правильно обновлялись) вот и не могу сообразить как это лучше сделать.

Отредактированно Марк (03.09.2011 01:06:12)

Неактивен

 

#4 03.09.2011 20:58:05

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Замена старых записей не увеличивая количество записей

А зачем скидывать в отдельную таблицу? Такой запрос в любом случае будет не быстрым,
зачем усложнять?

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson