Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
mysql PARTITION datetime
|
|||
|---|---|---|---|
|
#18+
Всем привет. Необходимо разбить таблицу на части, по полю типу datetime. разбивать по количеству дней от поля `add_time` DATETIME. То есть в Части 1 хранить все за последний день (24 часа) во второй части от 1 дня до 7 третия часть все что выше 7 дней. стараюсь сделать так: Код: sql 1. 2. 3. 4. Разбивается нормально, но при запросе: Код: sql 1. получаю partition: p1,p2,p3 хотя должно быть "p2" (или p2,p3). подскажите, как правильно переделать alter? Заранее всем спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2018, 16:34 |
|
||
|
mysql PARTITION datetime
|
|||
|---|---|---|---|
|
#18+
chiffacffТо есть в Части 1 хранить все за последний день (24 часа) во второй части от 1 дня до 7 третия часть все что выше 7 дней. Так работать не будет всё равно. Партицирование должно быть иммутабельно и потому не может зависеть от текущей даты, странно что парсер mysql позволяет такое написать. Хотя не первое что он написать позволяет, а работает всё равно по-другому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2018, 18:15 |
|
||
|
mysql PARTITION datetime
|
|||
|---|---|---|---|
|
#18+
так зависимость не от текущей даты, а от даты записи в поле `add_time` ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2018, 18:22 |
|
||
|
mysql PARTITION datetime
|
|||
|---|---|---|---|
|
#18+
chiffacff, и это не то поведение, что я процитировал как описанное вами желаемое из начального сообщения. В SQL вы описали логику партицирования: - данные за первое число месяца отдельно (я сегодня уже заработался и не соображу, попадёт ли сюда вообще что-нибудь, вроде бы нет т.к. условие < 1, что невозможно для дня месяца) - данные за первые 7 дней месяца - остальные ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2018, 18:57 |
|
||
|
mysql PARTITION datetime
|
|||
|---|---|---|---|
|
#18+
а как нужно?... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2018, 21:56 |
|
||
|
mysql PARTITION datetime
|
|||
|---|---|---|---|
|
#18+
Нашёл нужную страницу мануала: https://dev.mysql.com/doc/refman/5.7/en/partitioning-limitations-functions.html In MySQL 5.7, partition pruning is supported for the TO_DAYS(), TO_SECONDS(), YEAR(), and UNIX_TIMESTAMP() functions. Партицировать по day в принципе можно, но partition pruning не умеет даже по точному условию DAY(add_time) = const. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2018, 22:32 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39615615&tid=1829982]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 18ms |
| total: | 128ms |

| 0 / 0 |
