|
INSERT INTO из SELECT (но, только изменившиеся данные)
|
|||
---|---|---|---|
#18+
Таблица article_score_history (история оценок статьи): Код: plaintext 1. 2. 3. 4. 5. 6. 7.
Часть таблицы article (статьи): Код: plaintext 1. 2. 3. 4.
Вставляю ВСЕ данные score из таблицы article в article_score_history: Код: plaintext 1. 2.
Работает. Но, оценки сразу ВСЕХ статей меняются не часто. Не нужно постоянно дублировать не изменившуюся оценку для каждой статьи: 5 5 3 3 3 5 5 5 5 7. Достаточно записей: 5 3 5 7. Т.е. ПРОБЛЕМА: Нужно вставить только изменившиеся score для каждого article_id. Т.е. проверить последнее добавленное score в article_score_history. Если оно отличается от нового article.score - добавить новую запись. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2019, 23:18 |
|
INSERT INTO из SELECT (но, только изменившиеся данные)
|
|||
---|---|---|---|
#18+
linkiТ.е. ПРОБЛЕМА: Нужно вставить только изменившиеся score для каждого article_id. Ну так и вставляйте в таблицу истории только когда значение изменилось! Зачем все вставлять? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 11:58 |
|
INSERT INTO из SELECT (но, только изменившиеся данные)
|
|||
---|---|---|---|
#18+
Megabyte, поэтому и спрашиваю. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 16:04 |
|
INSERT INTO из SELECT (но, только изменившиеся данные)
|
|||
---|---|---|---|
#18+
Варианты: 1) Вставлять только изменившиеся данные. Получите такие данные в SELECT - это несложно,- а потом добавьте INSERT INTO. Запрос элементарен. 2) Вставлять всё. Потом удалять данные, если предыдущие по времени такие же (и пофиг, когда вставлено). Удаление дубликатов в форуме обсуждалось неоднократно. Всего-то и делов, что добавить сортировку. 3) Курсор в хранимой процедуре. Фактически то же, что и метод 1, но итерационно. И, скорее всего, ресурсоёмко. Не советую. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 21:41 |
|
INSERT INTO из SELECT (но, только изменившиеся данные)
|
|||
---|---|---|---|
#18+
linki, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 08:41 |
|
INSERT INTO из SELECT (но, только изменившиеся данные)
|
|||
---|---|---|---|
#18+
Большое спасибо за ответы. Swa111, row_number() - не подходит для MySQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2019, 20:50 |
|
INSERT INTO из SELECT (но, только изменившиеся данные)
|
|||
---|---|---|---|
#18+
linkirow_number() - не подходит для MySQLА мужики-то не знают... Window Function Descriptions . ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2019, 23:04 |
|
|
start [/forum/topic.php?fid=47&fpage=41&tid=1829368]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 295ms |
total: | 443ms |
0 / 0 |