Size: a a a

2020 May 18

DN

Denis Novickiy in sql_ninja
саша м
https://pastebin.com/w65sth1g


Товарищи, всем привет! Я понимаю основы, но не могу понять почему если бы здесь не было группировки, то задача не решилась бы. Просветите плз меня
max без group by не работает
источник

К

Какой-то Хмырь... in sql_ninja
Denis Novickiy
max без group by не работает
Работает жи, вроде

Если без доп полей
источник

DN

Denis Novickiy in sql_ninja
Какой-то Хмырь
Работает жи, вроде

Если без доп полей
так в запросе с доп.полями:) я ж о конкретном запросе
источник

см

саша м in sql_ninja
Все, понял и запомнил, благодарочка огромная!
источник

К

Какой-то Хмырь... in sql_ninja
саша м
https://pastebin.com/w65sth1g


Товарищи, всем привет! Я понимаю основы, но не могу понять почему если бы здесь не было группировки, то задача не решилась бы. Просветите плз меня
Смотри, когда ты юзаешь аггрегирующие ф-ции, например, макс, и когда ты пишешь какое-то поле вместе с максом, то скорее всего ты хочешь не абсолютный максисум в таблице, а максисум в рамках maker. Т.е. maker1 - его максимум, maker2 - его максимум итд. Поэтому надо группировать по maker.
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
Unfortunately, we do not have TRUNCATE TABLE command in SQLite😢
источник

К

Какой-то Хмырь... in sql_ninja
Дмитрий texnix 🇨🇳
Unfortunately, we do not have TRUNCATE TABLE command in SQLite😢
А там delete без where соответствующе интерпретируется, емнип
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
Какой-то Хмырь
А там delete без where соответствующе интерпретируется, емнип
он не чистит таблицу быстро, надо вакуум делать ищщо
источник

К

Какой-то Хмырь... in sql_ninja
Дмитрий texnix 🇨🇳
он не чистит таблицу быстро, надо вакуум делать ищщо
The Truncate Optimization

When the WHERE is omitted from a DELETE statement and the table being deleted has no triggers, SQLite uses an optimization to erase the entire table content without having to visit each row of the table individually. This "truncate" optimization makes the delete run much faster.

https://www.sqlite.org/lang_delete.html
источник

К

Какой-то Хмырь... in sql_ninja
Вакуум освобождает неиспользованное место, трункейт этого не делает
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
ишо, делит моментально отрабатывает? так же как и транкейт?
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
прост не засекал скорость
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
на ляме записей
источник

К

Какой-то Хмырь... in sql_ninja
Дмитрий texnix 🇨🇳
ишо, делит моментально отрабатывает? так же как и транкейт?
Ну, судя по доке, просто дилит по ляму отраьотает быстрее, чем дилит с where по 900к строк. А вот моментально или нет - я хз. Сталкивался, только когда писон пытался освоить. Но там 10 строчек было))

По описанию судя, он тупо пересоздает таблицу.
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
а ваще sqllite странная хрень, взял 2 базы одинаковые, разнёс на разные диски, выполнил на обоих отдельно вставки в таблицы, одни и те же вставки, а размер файла базы разный вышел
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
одна 18 метров стала, вторая 2мб осталась
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
хотя открываю 2мб базу - вроде все строки там есть
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
😁 нихуя нипонятно
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
о, пока бобром не отсоединился от базы, которая 2мб, она размер не поменяла
источник

Дt

Дмитрий texnix 🇨🇳... in sql_ninja
в оперативе штоли 16мб сидели
источник